Feature suggestions and discussion [READ THE FIRST POST]

🂾𝕃𝕚𝕟𝕔𝕠𝕝𝕟𝔹𝕣𝕖𝕨𝕤𝕥𝕖𝕣𝔽𝕒𝕟🂽
Best Fans Forever - For supporting the site
Best Fans Forever - For supporting the site
Nocturnal Vision - For supporting the site
Silly Pony - Celebrated the 13th anniversary of MLP:FIM, and 40 years of MLP!
Speaking Fancy - Badge given to members that help with translations
Shimmering Smile - Celebrated the 10th anniversary of Equestria Girls!
Lunar Hero - Went above and beyond in the name of Lunar freedom, they will be remembered in legends and folklore as paragons of heroism for generations (April Fools 2023).
Flower Trio - Helped others get their OC into the 2023 Derpibooru Collab.
Crystal Roseluck - Had their OC in the 2023 Derpibooru Collab.
Roseluck - Had their OC in the 2023 Derpibooru Collab.

Goodbye guys ;)
I could suggest a thing? What do you think of a specific function to find images with very few tags (Below 10 tags for example)
Because the community itself could use this function to put more appropriate Tags for images that have very few ways to be found. It would be interesting or meh?
Handy :)
🐴
Magnificent Metadata Maniac - #1 Assistant
Solar Guardian - Refused to surrender in the face of the Lunar rebellion and showed utmost loyalty to the Solar Empire (April Fools 2023).
Non-Fungible Trixie -
Magical Inkwell - Wrote MLP fanfiction consisting of at least around 1.5k words, and has a verified link to the platform of their choice

IRL 🎠 stallion

Always-visible tags

Add a fourth option to the “watch, spoiler, hide” menu for tags whose images you always wish to see, even if other tags say no.

Example

You set mane brushing to be always shown.
Even though you’re an old school HF who put a spoiler tag on alicorn Twilight Sparkle images, if her mane is being brushed, those images will be displayed plainly.
Since this is the same you from the example I just posted in the bugs thread, you also hate the sight of that sun goddess and have hidden the Celestia tag. However, an image of Celestia brushing Princess Twilight’s mane would display as a spoilered image listing Princess Celestia, Twilight Sparkle (princess), mane brushing. The tag list on the spoiler would list all hidden, spoiled, and always-available tags, in that order.

TBD

  • Find a one word name for these tags (because watch, spoiler, and hide are all single words)
  • I imagine this functionality primarily applying to filters. Does it have any relevance to the watch list?
saby
Pixel Perfection - I still call her Lightning Bolt
Solar Supporter - Fought against the New Lunar Republic rebellion on the side of the Solar Deity (April Fools 2023).
An Artist Who Rocks - 100+ images under their artist tag
King Sombra - Celebrated the 10th anniversary of The Crystal Empire!
A Lovely Nightmare Night - Celebrated the 12th anniversary of MLP:FIM!
A Perfectly Normal Pony - Red is Sprout, yellow is Hitch, you are a lout, and also a bitch.
Speaking Fancy - Badge given to members that help with translations
Tree of Harmony - Drew someone's OC for the 2022 Community Collab
Elements of Harmony - Had an OC in the 2022 Community Collab
Non-Fungible Trixie -

Moderator
Anti Fun Officer
@The Smiling Pony
The functionality of not having to manually maintain literally every filtered/spoiled tag as a complex entry with exeptions for whatever tags you want to always see no matter what.
It’s enough of a pain to maintain a single complex filter line for artist tags to prevent community collabs from being hidden, and that’s just one tag I’m trying to make ‘immune’ to my filter.
🐴
Magnificent Metadata Maniac - #1 Assistant
Solar Guardian - Refused to surrender in the face of the Lunar rebellion and showed utmost loyalty to the Solar Empire (April Fools 2023).
Non-Fungible Trixie -
Magical Inkwell - Wrote MLP fanfiction consisting of at least around 1.5k words, and has a verified link to the platform of their choice

IRL 🎠 stallion
@The Smiling Pony
It’s an ergonomic issue. A concrete use would be, for example, if you generally dislike anthro but occasionally discover artists who draw it with consistently good aesthetics. It would be a hassle to update complex filters for every such artist you discover (especially if an artist changes to match mainstream tastes and you need to remove them from the exceptions list). Much easier to manage it via a popover on their tag.
This is also a workaround for my:faves and my:upvotes not working in complex filters.
TexasUberAlles
Duck - If report count was a score, he'd have the biggest score
Pixel Perfection - I still call her Lightning Bolt
Silly Pony - Celebrated the 13th anniversary of MLP:FIM, and 40 years of MLP!
Shimmering Smile - Celebrated the 10th anniversary of Equestria Girls!
Lunar Supporter - Helped forge New Lunar Republic's freedom in the face of the Solar Empire's oppressive tyrannical regime (April Fools 2023).
Roseluck - Had their OC in the 2023 Derpibooru Collab.
Flower Trio - Helped others get their OC into the 2023 Derpibooru Collab.
King Sombra - Celebrated the 10th anniversary of The Crystal Empire!
A Lovely Nightmare Night - Celebrated the 12th anniversary of MLP:FIM!
Princess of Love - Extra special version for those who participated in the Canterlot Wedding 10th anniversary event by contributing art.

@saby
Which has priority when it comes to display/don’t display, Spoiler or Hide? As in, if you have artist:alpha spoilered and artist:beta hidden and they both take part in a collab, does it appear with a [Tag Hidden] Celestia thumbnail or does it not show up at all? If you’re watching tag A and have tag B hidden, does an image with both appear like a normal watched-tag image but with a Celestia thumbnail, or does it not show up at all?
Ciaran
ラ・ゼッタ - For supporting the site
Pixel Perfection - I still call her Lightning Bolt
Silly Pony - Celebrated the 13th anniversary of MLP:FIM, and 40 years of MLP!
Shimmering Smile - Celebrated the 10th anniversary of Equestria Girls!
Lunar Guardian - Earned a place among the ranks of the most loyal New Lunar Republic soldiers (April Fools 2023).
Crystal Roseluck - Had their OC in the 2023 Derpibooru Collab.
Flower Trio - Helped others get their OC into the 2023 Derpibooru Collab.
A Lovely Nightmare Night - Celebrated the 12th anniversary of MLP:FIM!
Princess of Love - Extra special version for those who participated in the Canterlot Wedding 10th anniversary event by contributing art.
Tree of Harmony - Drew someone's OC for the 2022 Community Collab

Senior Moderator
友情は魔法だ
@TexasUberAlles
It can get odd. I found an example earlier of interactions between filters and searches that … well, when you have a complex set of hides and finds, it gets wibbly wobbly. I’ll see if I can find the example - I think I logged in the bug reporting thread.
Ciaran
ラ・ゼッタ - For supporting the site
Pixel Perfection - I still call her Lightning Bolt
Silly Pony - Celebrated the 13th anniversary of MLP:FIM, and 40 years of MLP!
Shimmering Smile - Celebrated the 10th anniversary of Equestria Girls!
Lunar Guardian - Earned a place among the ranks of the most loyal New Lunar Republic soldiers (April Fools 2023).
Crystal Roseluck - Had their OC in the 2023 Derpibooru Collab.
Flower Trio - Helped others get their OC into the 2023 Derpibooru Collab.
A Lovely Nightmare Night - Celebrated the 12th anniversary of MLP:FIM!
Princess of Love - Extra special version for those who participated in the Canterlot Wedding 10th anniversary event by contributing art.
Tree of Harmony - Drew someone's OC for the 2022 Community Collab

Senior Moderator
友情は魔法だ
2LDR: If you are searching for something in ‘comments’, and there’s a hit and only one tag on the image is hidden, then the comment doesn’t show up. But if you search for the same thing in ‘comments’ and the image has a complex set of spoilered and hidden tags, then the results are less deterministic. The result might be hidden, might be spoilered.
This is not a bug, but more related to the order of operation, and your personal filters and filter behavior settings.
@Wiimeiser
Interesting, I’ll try that when I have a chance. I don’t ever use the random, myself.
Ciaran
ラ・ゼッタ - For supporting the site
Pixel Perfection - I still call her Lightning Bolt
Silly Pony - Celebrated the 13th anniversary of MLP:FIM, and 40 years of MLP!
Shimmering Smile - Celebrated the 10th anniversary of Equestria Girls!
Lunar Guardian - Earned a place among the ranks of the most loyal New Lunar Republic soldiers (April Fools 2023).
Crystal Roseluck - Had their OC in the 2023 Derpibooru Collab.
Flower Trio - Helped others get their OC into the 2023 Derpibooru Collab.
A Lovely Nightmare Night - Celebrated the 12th anniversary of MLP:FIM!
Princess of Love - Extra special version for those who participated in the Canterlot Wedding 10th anniversary event by contributing art.
Tree of Harmony - Drew someone's OC for the 2022 Community Collab

Senior Moderator
友情は魔法だ
@Wiimeiser
Al I can really safely say is that filters are an incredibly complex subject. Some of it happens on the server, it seems that some of it happens also on the client, and when you add the complexity of variances between client behaviors and the fact that some complex filters are basically their own coding domains, then I feel safe saying that sometimes getting the same result multiple times when hitting “random” is, in truth, also a random result.
When you consider the complexity of the possible outcomes, a universe where everyone sings their emotions becomes plausible. Even if that includes Klingons singing K-pop with full choreography.
Wiimeiser
Solar Supporter - Fought against the New Lunar Republic rebellion on the side of the Solar Deity (April Fools 2023).
Roseluck - Had their OC in the 2023 Derpibooru Collab.
Elements of Harmony - Had an OC in the 2022 Community Collab
Twinkling Balloon - Took part in the 2021 community collab.
My Little Pony - 1992 Edition
Friendship, Art, and Magic (2020) - Took part in the 2020 Community Collab
Dream Come True! - Participated in the MLP 9th Anniversary Event
Wallet After Summer Sale -
A Tale For The Ages - Celebrated MLP's 35th Anniversary and FiM's 8th Anniversary
An Artist Who Rocks - 100+ images under their artist tag

(Foil Hat)
@Ciaran
I actually meant to say my complex watchlist in my first post, not filter. Still, the complex filter does seem like it could mess with the random image function in much the same way.
Though the random issue seems to be fixed, I got >>2993271, >>242127, >>161990, and >>181807 when using the random image function.
🐴
Magnificent Metadata Maniac - #1 Assistant
Solar Guardian - Refused to surrender in the face of the Lunar rebellion and showed utmost loyalty to the Solar Empire (April Fools 2023).
Non-Fungible Trixie -
Magical Inkwell - Wrote MLP fanfiction consisting of at least around 1.5k words, and has a verified link to the platform of their choice

IRL 🎠 stallion
Al I can really safely say is that filters are an incredibly complex subject.
See also: the convo currently in the Site Bugs Thread.
Perhaps there should be a unifying filters mega thread instead of splitting the conversation in two places?
Brokedownandmadeone
Pixel Perfection - I still call her Lightning Bolt
Lunar Supporter - Helped forge New Lunar Republic's freedom in the face of the Solar Empire's oppressive tyrannical regime (April Fools 2023).
Non-Fungible Trixie -
Preenhub - We all know what you were up to this evening~
My Little Pony - 1992 Edition
Artistic Detective - For awesome dedication to sleuthing out and maintaining artist tags and links
Notoriously Divine Tagger - Consistently uploads images above and beyond the minimum tag requirements. And/or additionally, bringing over the original description from the source if the image has one. Does NOT apply to the uploader adding several to a dozen tags after originally uploading with minimum to bare tagging.
Cool Crow - "Caw!" An awesome tagger
Wallet After Summer Sale -
Equality - In our state, we're all equal here!

BigThirsty ponybooru.org
Any chance color-coded tags can be color coded while in the adding/removing menus, especially when on the upload page? I’ve missed obvious tags simply because I forgot species or artist multiple times and the color tags would make that easier for my eyes to catch. Rating throws an error so that’s impossible to miss.
🐴
Magnificent Metadata Maniac - #1 Assistant
Solar Guardian - Refused to surrender in the face of the Lunar rebellion and showed utmost loyalty to the Solar Empire (April Fools 2023).
Non-Fungible Trixie -
Magical Inkwell - Wrote MLP fanfiction consisting of at least around 1.5k words, and has a verified link to the platform of their choice

IRL 🎠 stallion
Do polls show you which options you voted for once they close, or do they only highlight the winning option? This should be clarified in the UI.
Background Pony #0F89
But, it’s just one of many things that the huge script does, and it relies on having a separate cache of categorized tags (which was last updated just under 2 months ago at the time of this post) which may or may not mean it’s something you want to use.
More to the point, part of wanting that feature is hoping it would help other people use the site better, such as by helping people notice in the cases where a tag is a character’s name instead of just what the words say (eg. “cheese sandwich” is not the tag for a food item.)
🐴
Magnificent Metadata Maniac - #1 Assistant
Solar Guardian - Refused to surrender in the face of the Lunar rebellion and showed utmost loyalty to the Solar Empire (April Fools 2023).
Non-Fungible Trixie -
Magical Inkwell - Wrote MLP fanfiction consisting of at least around 1.5k words, and has a verified link to the platform of their choice

IRL 🎠 stallion
@Brokedownandmadeone
Tags should be color-coded in the add tag dropdown, too. I just created and then had to clean up a mess of EqG tags I accidentally added when assuming “shake your tail” was the tag for tail shaking.
🐴
Magnificent Metadata Maniac - #1 Assistant
Solar Guardian - Refused to surrender in the face of the Lunar rebellion and showed utmost loyalty to the Solar Empire (April Fools 2023).
Non-Fungible Trixie -
Magical Inkwell - Wrote MLP fanfiction consisting of at least around 1.5k words, and has a verified link to the platform of their choice

IRL 🎠 stallion
Unsure whether here or opening a feature request issue on the Philomena repo.

Implement a bulk endpoint for faves & upvotes (ID & hash only)

Rationale

To improve data portability by re-implementing the booru sync script that
  1. Seems to have been abandoned
  2. Only has its thread still up on Ponerpics? I swear its author posted his scripts everywhere.
The script somewhat works still, however, it completely chokes when encountering an error while fetching the list of images to sync. This makes it useless for those of us with thousands of favorite images or updoots, as it’ll error out on page 45 (at a rate of 50 images/page) and stop instead of retrying or skipping the errored page.

Pseudocode of endpoint

def bulk_list(  # for GET requests
  api_key,  # whose lists to grab?
  list_type,  # either :faves, :upvotes, :hidden, or :downvotes
  page \\ 0,  # pagination
  apply_current_filter \\ false,  # apply the current filter for the user when retrieving results or grab everything?
) do ...

def bulk_update(  # for PUT requests
  api_key, list_type,  # same as above
  hashes,  # TODO: exact formatting
) do ...
bulk_list would return something like
[
  8675309: "123fa69420abcde",
  69420: "f16c98e2848c2f1bfff3985e8f1a54375cc49f78125391aeb80534ce011ead14e3e452a5c4bc98a66f56bdfcd07ef7800663b994f3f343c572da5ecc22a9660f",
]
as a minimal return. For a more comprehensive response, perhaps upgrade the response for each image to be hash, source URLs, and tags (names only, no IDs).
bulk_update takes the output from bulk_list [or just the list of hashes?] and then applies the appropriate operation to all images on the destination booru matching the supplied hashes [after resolving merged duplicates]. The response for bulk_update is a list of hashes with errors and the corresponding error [deleted, totally not found, something else, etc…]
Background Pony #0F89
2. Only has its thread still up on Ponerpics? I swear its author posted his scripts everywhere.
I found this script by Marker in a thread on Ponybooru, is that the one you mean?
The script somewhat works still, however, it completely chokes when encountering an error while fetching the list of images to sync. This makes it useless for those of us with thousands of favorite images or updoots, as it’ll error out on page 45 (at a rate of 50 images/page) and stop instead of retrying or skipping the errored page.
That sounds like an issue with the script, not something for an API to fix…
list_type, # either :faves, :upvotes, :hidden, or :downvotes
page \\ 0, # pagination
What would make this different from the existing search API? (Noting that you didn’t say anything about how many would be listed per page; one must assume it would be limited to no more than 50 per page just like the other API endpoints)
bulk_update takes the output from bulk_list [or just the list of hashes?] and then applies the appropriate operation to all images on the destination booru matching the supplied hashes [after resolving merged duplicates]. The response for bulk_update is a list of hashes with errors and the corresponding error [deleted, totally not found, something else, etc…]
¯\_(ツ)_/¯
IDK how much of an issue hash collisions are. There’s a tiny chance you might end up liking/faving the wrong post.
The script already does this one-by-one through the not-public endpoint which is how the site’s normal UI does it.
🐴
Magnificent Metadata Maniac - #1 Assistant
Solar Guardian - Refused to surrender in the face of the Lunar rebellion and showed utmost loyalty to the Solar Empire (April Fools 2023).
Non-Fungible Trixie -
Magical Inkwell - Wrote MLP fanfiction consisting of at least around 1.5k words, and has a verified link to the platform of their choice

IRL 🎠 stallion
  1. Yes, that’s the script. Thought it was Ponerpics for some reason.
  2. I presume hash collisions are rare enough to be a non-issue
  3. I’m aware that the API change wouldn’t fix the script. I presume it’s abandonware, but I filed a bug report. If it doesn’t get touched before early 2024 (when I’d realistically have time to work on this), I’d like for some bulk API to be in place so I can write a replacement.
  4. I suspect the errors I’m getting from Marker’s script are related to rate-limiting. Bulk endpoints would reduce the number of requests and, subsequently, the number of points of failure for rate-limiting [and MASSIVELY speed up the process of applying the faves and updoots on the destination boorus].
RepentantAnon
Solar Supporter - Fought against the New Lunar Republic rebellion on the side of the Solar Deity (April Fools 2023).
Elements of Harmony - Had an OC in the 2022 Community Collab
Twinkling Balloon - Took part in the 2021 community collab.
My Little Pony - 1992 Edition
Friendship, Art, and Magic (2020) -
Friendship, Art, and Magic (2019) - Celebrated Derpibooru's seventh year anniversary with friends.
Friendship, Art, and Magic (2018) - Celebrated Derpibooru's six year anniversary with friends.
Birthday Cake - Celebrated MLP's 7th birthday
Magnificent Metadata Maniac - #1 Assistant
A Perfectly Normal Pony - RepentantButt

So, my suggestion is something like a “locate” option, added to the tag dropdown menu, after watch and filter. What it would do is overlay a colored circle on the subject of the tag, like say a character. It would mostly be useful in pictures that feature a large assortment of characters, or otherwise situations where due to image size it’s difficult to see the reason an image might be tagged the way it is. Think of it as a “Where’s Wally/Waldo” cheatsheet. Users would need to be able to manually position the part of the image that corresponds to the tag, independantly of adding the tag itself.
Interested in advertising on Derpibooru? Click here for information!
Techy Cutie Pony Collection!

Help fund the $15 daily operational cost of Derpibooru - support us financially!

Syntax quick reference: **bold** *italic* ||hide text|| `code` __underline__ ~~strike~~ ^sup^ %sub%

Detailed syntax guide