jvoisin
91f5522ce0
Minor simplification of internal/reader/media/media.go
...
- Simplify a switch-case by moving a common condition above it.
- Remove a superfluous error-check: `strconv.ParseInt` returns `0` when passed
an empty string.
2024-03-18 16:09:32 -07:00
Frédéric Guillot
8212f16aa2
atom: avoid debug message when the date is empty
2024-03-17 15:29:50 -07:00
Frédéric Guillot
b1e73fafdf
Enable go-critic linter and fix various issues detected
2024-03-17 13:52:34 -07:00
Frédéric Guillot
f6404290ba
Replace Optional{Int,Int64,Float64} with a generic function OptionalNumber()
2024-03-17 12:25:55 -07:00
jvoisin
c29ca0e313
Minor simplifications of the rewriter
...
- Online some one-line functions
- Transform a free-standing function into a method
- Massively simplify `removeClickbait`
- Use a proper constant instead of a magic number in `applyFuncOnTextContent`
2024-03-17 12:15:46 -07:00
jvoisin
02a074ed26
Compile block/keep regex only once per feed
...
No need to compile them once for matching on the url,
once per tag, once per title, once per author, … one time is enough.
It also simplify error handling, since while regexp compilation can fail,
matching can't.
2024-03-17 12:08:03 -07:00
Romain de Laage
00dabc1d3c
feat: Media player: Conrol playback speed
...
fix #1845
2024-03-17 11:53:30 -07:00
Frédéric Guillot
b68ada396a
Rewrite API integration tests without build tags
2024-03-16 21:29:07 -07:00
Frédéric Guillot
e299e821a6
Update GitHub PR template
2024-03-15 20:59:17 -07:00
Frédéric Guillot
0f17dfc7d6
Fix regressions introduced by PR #2476
...
'Toast' messages are broken and v hotkey opens in the same tab
Commit d25c032171
2024-03-15 20:55:32 -07:00
Frédéric Guillot
7c80d6b86d
Fix download button loading label
2024-03-15 20:40:14 -07:00
Frédéric Guillot
f6f63b5282
Avoid warnings in ui package
...
Remove unused variables and improve JSON decoding in
saveEnclosureProgression()
2024-03-15 19:49:39 -07:00
Frédéric Guillot
309fdbb9fc
Fix force refresh
2024-03-15 19:42:09 -07:00
Frédéric Guillot
e2d862f2f6
Display an error message on edit feed page when the feed URL is not unique
2024-03-15 19:07:54 -07:00
Frédéric Guillot
4834e934f2
Remove some duplicated code in RSS parser
2024-03-15 18:40:06 -07:00
Frédéric Guillot
dd4fb660c1
Refactor Atom parser to use an adapter
2024-03-15 17:27:16 -07:00
jvoisin
2ba893bc79
Bump the number of simultaneous workers
...
We're in 2024, I'm pretty sure we can afford to have 16 simultaneous open http
connections at the same time, instead of only 5.
2024-03-15 14:05:58 -07:00
Frédéric Guillot
7a307f8e74
Fix regression: Add to Home Screen button is unreadable
...
Regression introduced in commit ea58bac548
2024-03-14 17:37:50 -07:00
jvoisin
7310e13499
More trusted-types compatibility
2024-03-14 17:10:40 -07:00
dependabot[bot]
bf6d286735
Bump github.com/go-webauthn/webauthn from 0.10.1 to 0.10.2
...
Bumps [github.com/go-webauthn/webauthn](https://github.com/go-webauthn/webauthn ) from 0.10.1 to 0.10.2.
- [Release notes](https://github.com/go-webauthn/webauthn/releases )
- [Commits](https://github.com/go-webauthn/webauthn/compare/v0.10.1...v0.10.2 )
---
updated-dependencies:
- dependency-name: github.com/go-webauthn/webauthn
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-03-14 17:03:54 -07:00
Frédéric Guillot
ca919c2ff8
Fix JavaScript error on the login page
2024-03-13 21:47:23 -07:00
Frédéric Guillot
5948786b15
Add support for RSS <media:category> element
2024-03-13 21:35:39 -07:00
jvoisin
f4746a7306
Fix and simplify shaarli's integration
...
- The jwt token was declared as using HS256 as algorithm, but was using HS512.
- No need to base64-encode then remove the padding when we can simply encode
without padding.
- Factorize the header+payload concatenation as data
Odds are that this integration was broken from the start (HS512 vs HS256), so
I'm not sure if it's better to add tests or to simply get rid of it.
2024-03-13 21:34:57 -07:00
Frédéric Guillot
648b9a8f6f
Refactor RSS Parser to use an adapter
2024-03-13 21:25:09 -07:00
jvoisin
66b8483791
Minor simplification of internal/proxy/proxy.go
...
- re-use ProxifiedUrl to implement AbsoluteProxifyURL, reducing the copy-pasta
- reduce the internal indentation of ProxifiedUrl by inverting some conditions
2024-03-13 19:42:01 -07:00
jvoisin
e0ee28c013
More progress towards trusted-types
...
Create a new function `addIcon` and use it to add icons, instead of
operating on raw html.
2024-03-13 19:35:20 -07:00
dependabot[bot]
d862d86f90
Bump google.golang.org/protobuf from 1.32.0 to 1.33.0
...
Bumps google.golang.org/protobuf from 1.32.0 to 1.33.0.
---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-03-13 18:31:50 -07:00
jvoisin
d25c032171
Simplify bootstrap.js
...
- Don't use lambdas to return a function, use directly the function instead.
- Remove a hack for "Chrome 67 and earlier" since it was released in 2018.
2024-03-13 18:26:27 -07:00
Frédéric Guillot
8429c6b0ab
Refactor JSON Feed parser to use an adapter
2024-03-12 22:37:14 -07:00
Frédéric Guillot
6bc4b35e38
Refactor RDF parser to use an adapter
...
Avoid tight coupling between `model.Feed` and the original XML RDF feed.
2024-03-12 20:54:05 -07:00
mcnesium
ee3486af66
align min-width with the other min-width values
2024-03-12 18:58:30 -07:00
jvoisin
45d486b919
When detecting the format, detect its version as well
...
There is no need to detect the format and then the version when both can be
done at the same time.
Add a benchmark as well, on large and small atom and rss files.
2024-03-12 18:56:56 -07:00
dependabot[bot]
688b73b7ae
Bump github.com/tdewolff/minify/v2 from 2.20.18 to 2.20.19
...
Bumps [github.com/tdewolff/minify/v2](https://github.com/tdewolff/minify ) from 2.20.18 to 2.20.19.
- [Release notes](https://github.com/tdewolff/minify/releases )
- [Commits](https://github.com/tdewolff/minify/compare/v2.20.18...v2.20.19 )
---
updated-dependencies:
- dependency-name: github.com/tdewolff/minify/v2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-03-12 17:38:27 -07:00
Frédéric Guillot
6d97f8b458
Parse podcast categories
2024-03-11 22:30:27 -07:00
Frédéric Guillot
f8e50947f2
Move iTunes and GooglePlay XML definitions to their own packages
2024-03-11 22:09:31 -07:00
Frédéric Guillot
9a637ce95e
Refactor RSS parser to use default namespace
...
This change avoid some limitations of the Go XML parser regarding XML namespaces
2024-03-11 21:07:13 -07:00
Frédéric Guillot
d3a85b049b
jsminifier: set JavaScript version
2024-03-11 19:02:52 -07:00
jvoisin
5bcb37901c
Use crypto.GenerateRandomBytes instead of doing it by hand
...
This makes the code a bit shorter, and properly handle
cryptographic error conditions.
2024-03-11 16:31:43 -07:00
jvoisin
9c8a7dfffe
Make use of HashFromBytes everywhere
...
It feels a bit silly to have a function and to not make use of it.
2024-03-11 15:22:22 -07:00
jvoisin
74e4032ffc
Small refactor of app.js
...
- replace a lot of `let` with `const`
- inline some `querySelectorAll` calls
- reduce the scope of some variables
- use some ternaries where it makes sense
- inline one-line functions
2024-03-11 15:18:57 -07:00
jvoisin
fd1fee852c
Simplify DomHelper.getVisibleElements
...
Use a `filter` instead of a loop with an index.
2024-03-11 15:03:00 -07:00
Frédéric Guillot
c51a3270da
GitHub Actions: Add basic ESLinter checks
2024-03-10 20:57:27 -07:00
Frédéric Guillot
45fa641d26
Fix JavaScript linter path in GitHub Actions
2024-03-10 20:37:18 -07:00
jvoisin
fd8f25916b
First steps towards trusted-types support
...
Refactor away some trival usages of `.innerHTML`. Unfortunately, there is no way to
enabled trusted-types in report-only mode via `<meta>` tags, see
https://github.com/w3c/webappsec-csp/issues/277
2024-03-10 20:14:30 -07:00
jvoisin
826e4d654f
Replace DomHelper.findParent with .closest
...
See https://developer.mozilla.org/en-US/docs/Web/API/Element/closest
2024-03-10 20:06:54 -07:00
jvoisin
d9d17f0d69
Use a Set
instead of an array in a KeyboardHandler's member
...
The variable `triggers` is only used to check if in contains a particular
value. Given that the number of keyboard shortcuts is starting to be
significant, let's future-proof the performances and use a `Set` instead of an
`Array` instead.
2024-03-10 19:41:13 -07:00
Frédéric Guillot
eaaeb68474
Fix conditions to publish packages in GitHub workflows
2024-03-10 12:25:13 -07:00
Frédéric Guillot
382885f144
Update changeLog
2024-03-10 10:50:47 -07:00
dependabot[bot]
0f7b047b0a
Bump github.com/go-jose/go-jose/v3 from 3.0.1 to 3.0.3
...
Bumps [github.com/go-jose/go-jose/v3](https://github.com/go-jose/go-jose ) from 3.0.1 to 3.0.3.
- [Release notes](https://github.com/go-jose/go-jose/releases )
- [Changelog](https://github.com/go-jose/go-jose/blob/v3.0.3/CHANGELOG.md )
- [Commits](https://github.com/go-jose/go-jose/compare/v3.0.1...v3.0.3 )
---
updated-dependencies:
- dependency-name: github.com/go-jose/go-jose/v3
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-03-07 20:59:42 -08:00
jvoisin
a074773e6c
Use an io.ReadSeeker instead of an io.Reader to parse feeds
...
This will allow to make use of func (*Reader) Seek, instead of re-recreating a
new reader. It's a large commit for a small change, but anything to simply the
reader/buffer/ReadAll/… mess is a step in the right direction I think, and it
should enable more follow-up simplifications.
2024-03-06 20:13:39 -08:00