Files
reader/outputs/freshrss/candidates/batch/item-04.article-candidate-record.json
T

129 lines
20 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"candidate_id": "cand:sha256:419828361de854cd29dbcd3e8205d3da50ff955ac9c85861d2e195bc888b2103",
"item": {
"item_id": "sha256:419828361de854cd29dbcd3e8205d3da50ff955ac9c85861d2e195bc888b2103",
"source_id": "freshrss:2987af960359c5c0",
"external_id": "tag:google.com,2005:reader/item/00064dc18f09d916",
"title": "FreshRSS 1.28.1",
"url": "https://github.com/FreshRSS/FreshRSS/releases/tag/1.28.1",
"author": "Alkarex",
"published_at": "2026-01-25T18:20:16Z",
"discovered_at": "2026-03-25T08:40:22.917124Z",
"content_kind": "article",
"language": null,
"raw_summary": "<ul>\n<li><a href=\"https://github.com/FreshRSS/FreshRSS/milestones/1.28.1\">Milestone</a></li>\n</ul>\n<p>This is a release focussing on bug fixing, in particular regressions from the release <a href=\"https://github.com/FreshRSS/FreshRSS/releases/tag/1.28.0\">1.28.0</a>.</p>\n<p>Selected new features ✨:</p>\n<ul>\n<li>New customisable message for closed registrations</li>\n<li>Add username in Apache access logs (also in Docker logs): for GReader API, and for HTTP Basic Auth from reverse proxy</li>\n</ul>\n<p>Improved performance 🏎️:</p>\n<ul>\n<li>Disable counting articles in user labels for Ajax requests (unused)</li>\n</ul>\n<p>Many bug fixes 🐛</p>\n<p>This release has been made by <a data-hovercard-type=\"user\" data-hovercard-url=\"/users/Alkarex/hovercard\" data-octo-click=\"hovercard-link-click\" data-octo-dimensions=\"link_type:self\" href=\"https://github.com/Alkarex\" data-sanitized-class=\"user-mention notranslate\">@Alkarex</a>, <a data-hovercard-type=\"user\" data-hovercard-url=\"/users/Frenzie/hovercard\" data-octo-click=\"hovercard-link-click\" data-octo-dimensions=\"link_type:self\" href=\"https://github.com/Frenzie\" data-sanitized-class=\"user-mention notranslate\">@Frenzie</a>, <a data-hovercard-type=\"user\" data-hovercard-url=\"/users/Inverle/hovercard\" data-octo-click=\"hovercard-link-click\" data-octo-dimensions=\"link_type:self\" href=\"https://github.com/Inverle\" data-sanitized-class=\"user-mention notranslate\">@Inverle</a> and newcomers <a data-hovercard-type=\"user\" data-hovercard-url=\"/users/ciro-mota/hovercard\" data-octo-click=\"hovercard-link-click\" data-octo-dimensions=\"link_type:self\" href=\"https://github.com/ciro-mota\" data-sanitized-class=\"user-mention notranslate\">@ciro-mota</a>, <a data-hovercard-type=\"user\" data-hovercard-url=\"/users/eveiscoull/hovercard\" data-octo-click=\"hovercard-link-click\" data-octo-dimensions=\"link_type:self\" href=\"https://github.com/eveiscoull\" data-sanitized-class=\"user-mention notranslate\">@eveiscoull</a>, <a data-hovercard-type=\"user\" data-hovercard-url=\"/users/hackerman70000/hovercard\" data-octo-click=\"hovercard-link-click\" data-octo-dimensions=\"link_type:self\" href=\"https://github.com/hackerman70000\" data-sanitized-class=\"user-mention notranslate\">@hackerman70000</a>, <a data-hovercard-type=\"user\" data-hovercard-url=\"/users/Hufschmidt/hovercard\" data-octo-click=\"hovercard-link-click\" data-octo-dimensions=\"link_type:self\" href=\"https://github.com/Hufschmidt\" data-sanitized-class=\"user-mention notranslate\">@Hufschmidt</a>, <a data-hovercard-type=\"user\" data-hovercard-url=\"/users/johan456789/hovercard\" data-octo-click=\"hovercard-link-click\" data-octo-dimensions=\"link_type:self\" href=\"https://github.com/johan456789\" data-sanitized-class=\"user-mention notranslate\">@johan456789</a>, <a data-hovercard-type=\"user\" data-hovercard-url=\"/users/martgnz/hovercard\" data-octo-click=\"hovercard-link-click\" data-octo-dimensions=\"link_type:self\" href=\"https://github.com/martgnz\" data-sanitized-class=\"user-mention notranslate\">@martgnz</a>, <a data-hovercard-type=\"user\" data-hovercard-url=\"/users/mmeier86/hovercard\" data-octo-click=\"hovercard-link-click\" data-octo-dimensions=\"link_type:self\" href=\"https://github.com/mmeier86\" data-sanitized-class=\"user-mention notranslate\">@mmeier86</a>, <a data-hovercard-type=\"user\" data-hovercard-url=\"/users/netsho/hovercard\" data-octo-click=\"hovercard-link-click\" data-octo-dimensions=\"link_type:self\" href=\"https://github.com/netsho\" data-sanitized-class=\"user-mention notranslate\">@netsho</a>, <a data-hovercard-type=\"user\" data-hovercard-url=\"/users/neuhaus/hovercard\" data-octo-click=\"hovercard-link-click\" data-octo-dimensions=\"link_type:self\" href=\"https://github.com/neuhaus\" data-sanitized-class=\"user-mention notranslate\">@neuhaus</a>, <a data-hovercard-type=\"user\" data-hovercard-url=\"/users/RobLoach/hovercard\" data-octo-click=\"hovercard-link-click\" data-octo-dimensions=\"link_type:self\" href=\"https://github.com/RobLoach\" data-sanitized-class=\"user-mention notranslate\">@RobLoach</a>, <a data-hovercard-type=\"user\" data-hovercard-url=\"/users/rupakbajgain/hovercard\" data-octo-click=\"hovercard-link-click\" data-octo-dimensions=\"link_type:self\" href=\"https://github.com/rupakbajgain\" data-sanitized-class=\"user-mention notranslate\">@rupakbajgain</a>.</p>\n<p>Full <a href=\"https://github.com/FreshRSS/FreshRSS/blob/1.28.1/CHANGELOG.md\">changelog</a>:</p>\n<ul>\n<li>Features\n<ul>\n<li>Handle Web scraping of <code>text/plain</code> as <code>&lt;pre class=\"text-plain\"&gt;</code> <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8340\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8340/hovercard\">#8340</a></li>\n<li>New customisable message for closed registrations <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8462\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8462/hovercard\">#8462</a></li>\n</ul>\n</li>\n<li>Bug fixing\n<ul>\n<li>Fix unwanted expansion of user queries (saved searches) applied to filters <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8395\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8395/hovercard\">#8395</a></li>\n<li>Fix encoding of filter actions for labels <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8368\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8368/hovercard\">#8368</a></li>\n<li>Fix searching of tags <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8425\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8425/hovercard\">#8425</a></li>\n<li>Fix refreshing feeds with token while anonymous refresh is disabled <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8371\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8371/hovercard\">#8371</a></li>\n<li>Fix RSS and OPML access by token <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8434\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8434/hovercard\">#8434</a></li>\n<li>Fix MySQL/MariaDB <code>transliterator_transliterate</code> fallback (when the <code>php-intl</code> extension is unavailable) <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8427\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8427/hovercard\">#8427</a></li>\n<li>Fix regression with MySQL/MariaDB index hint <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8460\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8460/hovercard\">#8460</a></li>\n<li>Auto-add <code>lastUserModified</code> database column also during mark-as-read action <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8346\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8346/hovercard\">#8346</a></li>\n<li>Do not include hidden feeds when counting unread articles in categories <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8357\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8357/hovercard\">#8357</a></li>\n<li>Remove wrong PHP deprecation of OPML export action <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8399\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8399/hovercard\">#8399</a></li>\n<li>Fix shortcut for next unread article <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8466\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8466/hovercard\">#8466</a></li>\n<li>Fix custom <code>session.cookie-lifetime</code> <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8446\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8446/hovercard\">#8446</a></li>\n<li>Fix feed validator button when changing the feed URL <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8436\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8436/hovercard\">#8436</a></li>\n</ul>\n</li>\n<li>Performance\n<ul>\n<li>Disable counting articles in user labels for Ajax requests (unused) <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8352\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8352/hovercard\">#8352</a></li>\n</ul>\n</li>\n<li>Security\n<ul>\n<li>Change <code>Content-Disposition: inline</code> to <code>attachment</code> in <code>f.php</code> <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8344\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8344/hovercard\">#8344</a></li>\n<li>Hardened user methods <code>exists</code>, <code>mtime</code>, <code>ctime</code> <a href=\"https://github.com/FreshRSS/FreshRSS/commit/26c1102567c095b051b5e1a0aedb45b78713c283\">#26c1102</a></li>\n</ul>\n</li>\n<li>Deployment\n<ul>\n<li>Add username in Apache access logs (also in Docker logs): for GReader API, and for HTTP Basic Auth from reverse proxy <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8392\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8392/hovercard\">#8392</a></li>\n</ul>\n</li>\n<li>SimplePie\n<ul>\n<li>Update of <code>CURLOPT_ACCEPT_ENCODING</code> <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8376\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8376/hovercard\">#8376</a>, <a href=\"https://github.com/simplepie/simplepie/pull/960\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/simplepie/simplepie/pull/960/hovercard\">simplepie#960</a>, <a href=\"https://github.com/simplepie/simplepie/pull/962\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/simplepie/simplepie/pull/962/hovercard\">simplepie#962</a></li>\n<li>Fix don’t preserve children inside disallowed <code>&lt;template&gt;</code> element <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8443\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8443/hovercard\">#8443</a></li>\n<li>Fixes before PHPStan 2 <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8445\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8445/hovercard\">#8445</a>, <a href=\"https://github.com/simplepie/simplepie/pull/957\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/simplepie/simplepie/pull/957/hovercard\">simplepie#957</a></li>\n</ul>\n</li>\n<li>Extensions\n<ul>\n<li>Update <code>.gitignore</code> to ignore installed extensions <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8372\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8372/hovercard\">#8372</a></li>\n</ul>\n</li>\n<li>UI\n<ul>\n<li>Add <code>data-category=\"3\"</code> to ease custom CSS styling of articles <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8397\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8397/hovercard\">#8397</a></li>\n<li>Fix space between <em>By:</em> and the author’s name <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8422\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8422/hovercard\">#8422</a></li>\n</ul>\n</li>\n<li>I18n\n<ul>\n<li>Improve Brazilian Portuguese <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8411\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8411/hovercard\">#8411</a></li>\n<li>Improve Dutch <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8403\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8403/hovercard\">#8403</a></li>\n<li>Improve German <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8402\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8402/hovercard\">#8402</a></li>\n<li>Improve Polish <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8408\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8408/hovercard\">#8408</a></li>\n<li>Improve Spanish <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8464\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8464/hovercard\">#8464</a></li>\n</ul>\n</li>\n<li>Misc.\n<ul>\n<li>Update dev dependencies <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8387\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8387/hovercard\">#8387</a>, <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8388\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8388/hovercard\">#8388</a>, <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8389\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8389/hovercard\">#8389</a>,<br>\n<a href=\"https://github.com/FreshRSS/FreshRSS/pull/8390\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8390/hovercard\">#8390</a>, <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8391\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8391/hovercard\">#8391</a>, <a href=\"https://github.com/FreshRSS/FreshRSS/pull/8393\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8393/hovercard\">#8393</a>,<br>\n<a href=\"https://github.com/FreshRSS/FreshRSS/pull/8453\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"/FreshRSS/FreshRSS/pull/8453/hovercard\">#8453</a></li>\n</ul>\n</li>\n</ul><figure class=\"enclosure\">\n\t<p class=\"enclosure-content\">\n\t\t<img class=\"enclosure-thumbnail\" src=\"https://avatars.githubusercontent.com/u/1008324?s=60&amp;v=4\" alt=\"\" />\n\t</p>\n</figure>",
"raw_content": null,
"metadata": {
"upstream": "freshrss",
"origin": {
"streamId": "feed/1",
"htmlUrl": "https://github.com/FreshRSS/FreshRSS/",
"title": "FreshRSS releases"
},
"categories": [
"未分类",
"user/-/state/org.freshrss/main"
],
"crawled_at": "2026-03-24T09:13:04.078000Z",
"published_epoch": 1769365216
},
"fetch_state": "pending"
},
"article": {
"extract_id": "sha256:169f2b50eec3d198df126a8daedb95c48cff252ead9d4d2598a449e128cae2b8",
"item_id": "sha256:419828361de854cd29dbcd3e8205d3da50ff955ac9c85861d2e195bc888b2103",
"source_id": "freshrss:2987af960359c5c0",
"url": "https://github.com/FreshRSS/FreshRSS/releases/tag/1.28.1",
"title": "FreshRSS 1.28.1",
"author": "Alkarex",
"published_at": "2026-01-25T18:20:16Z",
"language": null,
"content_kind": "article",
"plain_text": "Alkarex\nreleased this\n25 Jan 18:20\n·\n78 commits\nto edge\nsince this release\nImmutable\nrelease. Only release title and notes can be modified.\nThis is a release focussing on bug fixing, in particular regressions from the release 1.28.0.\nSelected new features ✨:\n- New customisable message for closed registrations\n- Add username in Apache access logs (also in Docker logs): for GReader API, and for HTTP Basic Auth from reverse proxy\nImproved performance 🏎️:\n- Disable counting articles in user labels for Ajax requests (unused)\nMany bug fixes 🐛\nThis release has been made by @Alkarex, @Frenzie, @Inverle and newcomers @ciro-mota, @eveiscoull, @hackerman70000, @Hufschmidt, @johan456789, @martgnz, @mmeier86, @netsho, @neuhaus, @RobLoach, @rupakbajgain.\nFull changelog:\n- Features\n- Bug fixing\n- Fix unwanted expansion of user queries (saved searches) applied to filters #8395\n- Fix encoding of filter actions for labels #8368\n- Fix searching of tags #8425\n- Fix refreshing feeds with token while anonymous refresh is disabled #8371\n- Fix RSS and OPML access by token #8434\n- Fix MySQL/MariaDB\ntransliterator_transliterate\nfallback (when thephp-intl\nextension is unavailable) #8427 - Fix regression with MySQL/MariaDB index hint #8460\n- Auto-add\nlastUserModified\ndatabase column also during mark-as-read action #8346 - Do not include hidden feeds when counting unread articles in categories #8357\n- Remove wrong PHP deprecation of OPML export action #8399\n- Fix shortcut for next unread article #8466\n- Fix custom\nsession.cookie-lifetime\n#8446 - Fix feed validator button when changing the feed URL #8436\n- Performance\n- Disable counting articles in user labels for Ajax requests (unused) #8352\n- Security\n- Deployment\n- Add username in Apache access logs (also in Docker logs): for GReader API, and for HTTP Basic Auth from reverse proxy #8392\n- SimplePie\n- Update of\nCURLOPT_ACCEPT_ENCODING\n#8376, simplepie#960, simplepie#962 - Fix don’t preserve children inside disallowed\n<template>\nelement #8443 - Fixes before PHPStan 2 #8445, simplepie#957\n- Update of\n- Extensions\n- Update\n.gitignore\nto ignore installed extensions #8372\n- Update\n- UI\n- I18n\n- Misc.",
"quality_flags": {
"is_paywalled": false,
"is_truncated": false,
"is_low_content": false
},
"metadata": {
"content_source": "fetched_html",
"extractor": "trafilatura",
"char_count": 2155
},
"pipeline_state": "extracted"
},
"summary": {
"title": "FreshRSS 1.28.1",
"url": "https://github.com/FreshRSS/FreshRSS/releases/tag/1.28.1",
"summary": "FreshRSS 1.28.1 是一个专注于修复错误的版本,主要解决了 1.28.0 版本引入的回归问题。该版本包含少量新功能、性能改进和多项错误修复。",
"highlights": [
"此版本主要修复了 1.28.0 版本引入的回归问题。",
"新增了注册关闭时的可自定义消息功能。",
"在 Apache 访问日志和 Docker 日志中添加了用户名记录。",
"通过禁用 Ajax 请求中用户标签的文章计数来提升性能。",
"修复了包括用户查询扩展、标签搜索、令牌访问在内的多项错误。"
],
"keywords": [
"FreshRSS",
"bug fixing",
"regression",
"Apache logs",
"GReader API",
"Ajax",
"MySQL",
"MariaDB"
],
"topics": [
"开源软件",
"版本更新",
"RSS 阅读器",
"软件开发",
"性能优化"
],
"category": "资讯",
"worth_keeping": true,
"reason": "提供了 FreshRSS 特定版本更新的详细变更信息,对用户和开发者有明确的参考价值。"
},
"filter_result": {
"decision": "review",
"matched_rules": [
"review-worth-keeping-other"
],
"reasons": [
"Worth-keeping signal is positive but no stronger keep rule matched."
],
"labels": [
"needs-review",
"summary"
],
"priority": 60,
"matches": [
{
"rule_id": "review-worth-keeping-other",
"decision": "review",
"reason": "Worth-keeping signal is positive but no stronger keep rule matched.",
"labels": [
"summary",
"needs-review"
],
"priority": 60
}
]
},
"digest_section_hint": null,
"digest_rank": 60,
"review_state": "pending",
"source_refs": {
"item_path": "outputs\\freshrss\\items\\batch\\item-04.item.json",
"extracted_path": "outputs\\freshrss\\extracted\\batch\\item-04.extracted.json",
"summary_path": "outputs\\freshrss\\summary\\batch\\item-04\\result.loop.json",
"filter_path": "outputs\\freshrss\\filter\\batch\\item-04.filter.json"
},
"rendered_markdown": null,
"metadata": {
"generated_at": "2026-03-25T10:25:50.553597Z",
"pipeline_version": "v1",
"producer": "run_article_candidate.py",
"run_id": "candidate-20260325-102550"
}
}