mnylc / islandora_find_replace

An administrative user interface to perform find & replace on datastream text.
GNU General Public License v3.0
1 stars 0 forks source link

Bad bad bad module #13

Closed DiegoPino closed 4 years ago

DiegoPino commented 4 years ago

What is the issue and what i (module) did wrong

Bad code plagues our existance in OSS repo world. Well there is a thing that is SO annoying about this module. It actually allows a XML to be destroyed. I mean, its as easy as verifying that the result of a find and replace operation ends in a valid/parseable XML before applying the ingest, but no, it does not do this! I have some users generating me 6556 versions of MODS because of this code and also another code written by a vendor that does MODS self transformations. Both have brought our repo down many many times

Solution: do it right. Code it in the way it was supposed to be, validating the output mime (if XML). THAT

@bondjimbond what do you think? I will do this, any use you can have on having this time bomb behaving like it should?

bondjimbond commented 4 years ago

Ha, adding XML validation would certainly be beneficial. I don't give my sites access to this module for precisely that reason - I don't want them generating bad XML. In my tutorials for other batch replace tools I always have to say, "THIS IS REALLY DANGEROUS AND CAN BREAK YOUR SITE IF YOU SCREW IT UP."

So yes, please, validation+++.

DiegoPino commented 4 years ago

Ok, coding that stuff now! Will ask for you expert eyes when done. Cheers

bondjimbond commented 4 years ago

@DiegoPino How easy would it be to copy the validation code from #14 for use in https://github.com/ulsdevteam/islandora_datastreams_io?

DiegoPino commented 4 years ago

As easy as it gets. To be honest Brandon, i do not know how we reached year 2020 without any CORE validations ever. What a mess

DiegoPino commented 4 years ago

@bondjimbond but i can not offer to fork and maintain that module. There are a plenty of errors there and in CRUD i can not fix because of time. can help you if you do