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

Using 'episode' as part of --fields omits Doctor Who episode "Rogue" from search results #473

Open
5 tasks done
BtEtta opened this issue Jun 26, 2024 · 0 comments
Open
5 tasks done
Labels
bug Something isn't working

Comments

@BtEtta
Copy link

BtEtta commented Jun 26, 2024

Do not file a bug report if you are using get_iplayer outside the UK. If you do, your report will be ignored.

  • I am not using get_iplayer outside the UK

Do not file a bug report if you are using get_iplayer with a VPN or proxy from any location, including the UK. If you do, your report will be ignored.

  • I am not using get_iplayer with a VPN or proxy from any location, including the UK

Search the repository (search field at top left) to see if a report already exists for the bug in the issue tracker. Do not create a duplicate report. Duplicate reports will be ignored.

  • I have searched the repository and found no existing reports of the bug in the issue tracker

Review recent open and closed entries in the issue tracker to see if a report already exists for the bug. Do not create a duplicate report. Duplicate reports will be ignored.

  • I have reviewed recent open and closed entries in the issue tracker and found no existing reports of the bug

Ensure that you are using get_iplayer 3.35 or higher. If not, your report will be ignored.

  • I am using get_iplayer 3.35 or higher

Identify the operating system and version where get_iplayer demonstrates the bug

Windows 10

Provide a clear and concise description of the bug. Do not paste get_iplayer output or screenshots into the field below. If you do, your report will be ignored.

When using --fields=name,episode to search for content certain entries do not show up which do correctly appear if --fields is not specified or if episode is not specified as one of the fields.

This error occurs even if I search for something that should be included in the episode field. E.g. "Rogue" returns no results with --fields=name,episode while "Dot" returns the expected results. This behaviour also continues to occur even if I use --rebuild-cache

I have found no problems with any other actions related to the entries that get excluded when using the index number: --info works, as does downloading.

Upon investigating the code the source appears to be that if --exclude --exclude-category or --exclude-channel are not specified on the command-line they are given ^ROGUE$ as the default regex so this will only happen to a broadcast where one or more of the fields being searched is exactly "Rogue" (case-insensitive)

Changing the $exclude_regex default to ^$ fixes the problem in this use case as the name and episode should never be empty as far as I can see—but some other searchable fields can be blank. This fix also works for $channel_exclude_regex but not $category_exclude_regex, presumably because the latter is only meant to be used with --history and is blank in normal searches.

In the long term a better solution should probably be implemented that doesn't try to apply any exclusions at all if none have been specified on the command-line or in the options file. I note that "ROGUE" or variations thereof (including "ROUGE") are used in several other places throughout the script and may be hiding similar edge cases depending on how they're used.

Provide the PID or URL of the programme you are attempting to download, if applicable. Provide the PID or URL for only one programme.

No response

Provide the complete get_iplayer command line that demonstrates the bug. Do not truncate or excerpt the command. If you do, your report will be ignored. If you are using the Web PVR, list the steps necessary to reproduce the bug, in as much detail as possible.

get_iplayer.pl --fields=name,episode "Doctor Who"

Drag your verbose log file into the field below to create an attachment. Your verbose log file must be added as an attachment. Do not paste its contents into the field below. If you do, your report will be ignored. You may enter a URL linking to your verbose log file on a pastebin site. If the bug prevents get_iplayer from running, enter "N/A" in the field below. If you enter any other text in the field below, your report will be ignored.

log.txt

If you are using the Web PVR, provide your web browser name and version. This information typically can be found from the application menu via Chrome/Firefox/Safari->About... (macOS) or Help->About... (Linux/Windows)

No response

@github-actions github-actions bot locked and limited conversation to collaborators Jun 26, 2024
@github-actions github-actions bot added the invalid This doesn't seem right label Jun 26, 2024
@notnac notnac added bug Something isn't working and removed invalid This doesn't seem right labels Jun 26, 2024
@notnac notnac reopened this Jun 26, 2024
@notnac notnac changed the title Using 'episode' as part of --fields results in some search results being excluded Using 'episode' as part of --fields omits Doctor Who episode "Rogue" from search results Jul 5, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants