Files
reader/outputs/freshrss/rerun/20260325-183221/candidates/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-25T10:32:30.103137Z",
"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·\n79 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 访问日志中的用户名记录功能。",
"通过禁用 Ajax 请求中用户标签的文章计数来提升性能。",
"修复了涉及过滤器、标签搜索、RSS/OPML 访问和数据库等多个具体问题。",
"该版本由多位贡献者共同完成,包括新加入的开发者。"
],
"keywords": [
"FreshRSS",
"bug 修复",
"回归问题",
"GReader API",
"HTTP Basic Auth",
"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\\rerun\\20260325-183221\\items\\batch\\item-04.item.json",
"extracted_path": "outputs\\freshrss\\rerun\\20260325-183221\\extracted\\batch\\item-04.extracted.json",
"summary_path": "outputs\\freshrss\\rerun\\20260325-183221\\summary\\item-04.result.loop.json",
"filter_path": "outputs\\freshrss\\rerun\\20260325-183221\\filter\\item-04.filter.json"
},
"rendered_markdown": null,
"metadata": {
"generated_at": "2026-03-25T10:34:08.723118Z",
"pipeline_version": "v1",
"producer": "run_article_candidate.py",
"run_id": "candidate-20260325-103408"
}
}