Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RSS Syndication : Bugs & Improvements #3681

Closed
effone opened this issue May 31, 2019 · 4 comments · Fixed by #3682
Closed

RSS Syndication : Bugs & Improvements #3681

effone opened this issue May 31, 2019 · 4 comments · Fixed by #3682
Assignees
Labels
b:1.8 Branch: 1.8.x p:low Priority: Low. Issue to resolve with low preference s:resolved Status: Resolved. Solution implemented or scheduled t:bug Type: Bug. An issue causing error / flaw / malfunction t:code-quality Type: Code Quality. Improves code without affecting functionality t:feature Type: Feature. Implements new functionality
Milestone

Comments

@effone
Copy link
Member

effone commented May 31, 2019

First, the bugs: 

Forum selection is lost on URL regeneration:
Reproduction steps:

  1. Select some forums and generate the URL. The url contains fids. OK.
  2. In the returned page don't touch forum selection, change the feed version and / or limit, or even do nothing at all, regenerate the url. fids are now lost in feed url.

Reason is, if you look minutely returned page has the first "Syndicate all Forums" field selected by default, no matter you selected that previously or not and that overrules the other selections.

Accessible Forums Permission:
You can generate feeds from restricted forums if you have access to those. I am not sure why this is designed this way, but IMO feed should be allowed for only forums visible to guests since in most case this is gonna dealt by third party feed readers. Allowing that may disclose posts from secret forums. Opinions appreciated.

Hardcoded minimum limit - contradicting:
The minimum limit of the syndication is set to 15 by 'misc.php' (which generates the page) and 20 by 'syndication.php' (which generates the feed). This should be driven by user settings, or at-least same in both places.

Cluttered code:
Not a big issue, but the code in page generator introduced unnecessary variables and condition loops, which in 15 minutes of effort I have cut down to 50% (not going into deep now, curious heads can ask further).

Implement JSON Feed output format:
As stated, This format is being popular. Many popular sites use this format, including Yahoo Weather and what not. Wordpress also has a plugin in place https://wordpress.org/plugins/jsonfeed/

Since Google has dropped feed API in 2016 its now not possible to get cross-domain feeds without readers, say, using simple jQuery. Earlier it was possible using Google API as proxy.

Easy to handle the data.

There is already a standard in place since 2017. https://jsonfeed.org/version/1

This will be a great addition to MyBB Syndication.

Include author details:
Currently no author details are included in feeds. All standards allow to include details (author name, uid and / or avatar) of author per item. Even MyBB Syndication class already supports inclusion of author but MyBB generator has no clue about this. This is useful and should be included.

Implementation of hubs (?):
Well, now this is a little much at this moment, I know, but to keep in mind for future. Modern readers have option not to fetch the feeds in certain interval and compare / replace with the old. Feed holds a top level array pointer that can send notification to the subscribers on feed change to fetch and refresh.

Original thread: RSS Syndication : Bugs & Improvements

@effone effone added b:1.8 Branch: 1.8.x s:confirmed Status: Confirmed. Retested and found the issue exists t:bug Type: Bug. An issue causing error / flaw / malfunction p:low Priority: Low. Issue to resolve with low preference t:code-quality Type: Code Quality. Improves code without affecting functionality t:feature Type: Feature. Implements new functionality labels May 31, 2019
@effone effone added this to the 1.8.21 milestone May 31, 2019
@effone effone self-assigned this May 31, 2019
@effone effone mentioned this issue May 31, 2019
5 tasks
@RevertIT
Copy link
Contributor

i don't know if this is a right place but RSS is auto parsing [hide] tags like they are not added to the post and shows content within.

@effone
Copy link
Member Author

effone commented May 31, 2019

This is not the right place, yes, but I'd like to respond.

  • We are not dealing with any RSS changes in this issue. It is to address some bugs and add JSON feed feature.
  • [hide] is not a default / core bbcode tag so we are not gonna address that. Its your plugin which adds the hide functionality carries the responsibility to hook into feed generation and wipe the content inside hide tag.

@RevertIT
Copy link
Contributor

Just the plugin is abandoned but quite popular :/

https://community.mybb.com/mods.php?action=view&pid=591

@effone
Copy link
Member Author

effone commented May 31, 2019

That plugin has another issue as if you block an url with hide tag it doesn't get parsed as link unless you place spaces around. But what to do? It is as it is.
I have fixed those issues for some sites; however.

@euantorano euantorano added s:review-needed Status: Review Needed. Possible solution submitted and removed s:confirmed Status: Confirmed. Retested and found the issue exists labels May 31, 2019
@euantorano euantorano added s:resolved Status: Resolved. Solution implemented or scheduled and removed s:review-needed Status: Review Needed. Possible solution submitted labels May 31, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
b:1.8 Branch: 1.8.x p:low Priority: Low. Issue to resolve with low preference s:resolved Status: Resolved. Solution implemented or scheduled t:bug Type: Bug. An issue causing error / flaw / malfunction t:code-quality Type: Code Quality. Improves code without affecting functionality t:feature Type: Feature. Implements new functionality
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants