Sam Morgan

Results 33 comments of Sam Morgan

~I suspect this is due to a downstream change in the `requests` library. It didn't seem to happen with v2.28.1~ **Edit:** I was wrong, tried downgrading and it made no...

Here's a sample request body that is causing an error. ``` --7ac9dc7b70e1c10c8b48844f6dd76995 Content-Disposition: form-data; name="files"; filename="image.jpg" Content-Type: image/jpeg \xff\xd8\xff\xe1\x00\xe8Exif\x00\x00MM\x00*\x00\x00\x00\x08\x00\x06\x01\x12\x00\x03\x00\x00\x00\x01\x00\x01\x00\x00\x01\x1a\x00\x05\x00\x00\x00\x01\x00\x00\x00V\x01\x1b\x00\x05\x00\x00\x00\x01\x00\x00\x00^\x01(\x00\x03\x00\x00\x00\x01\x00\x02\x00\x00\x02\x13\x00\x03\x00\x00\x00\x01\x00\x01\x00\x00\x87i\x00\x04\x00\x00\x00\x01\x00\x00\x00f\x00\x00\x00\x00\x00\x00\x00\x90\x00\x00\x00\x01\x00\x00\x00\x90\x00\x00\x00\x01\x00\x08\x90\x00\x00\x07\x00\x00\x00\x040221\x91\x01\x00\x07\x00\x00\x00\x04\x01\x02\x03\x00\x92\x86\x00\x07\x00\x00\x00\x12\x00\x00\x00\xcc\xa0\x00\x00\x07\x00\x00\x00\x040100\xa0\x01\x00\x03\x00\x00\x00\x01\x00\x01\x00\x00\xa0\x02\x00\x04\x00\x00\x00\x01\x00\x00\x00\x80\xa0\x03\x00\x04\x00\x00\x00\x01\x00\x00\x00\x80\xa4\x06\x00\x03\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00ASCII\x00\x00\x00Screenshot\x00\x00\xff\xe2\x02\x18ICC_PROFILE\x00\x01\x01\x00\x00\x02\x08appl\x04\x00\x00\x00mntrRGB XYZ \x07\xe7\x00\n\x00\x19\x00\x08\x00&\x00\x1eacspAPPL\x00\x00\x00\x00APPL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf6\xd6\x00\x01\x00\x00\x00\x00\xd3-appl\xb7\xd7%\xfbQl\x18\xbe\xa9\x1f\x13\xd8Lj\x94\xc9\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ndesc\x00\x00\x00\xfc\x00\x00\x00.cprt\x00\x00\x01,\x00\x00\x00Pwtpt\x00\x00\x01|\x00\x00\x00\x14rXYZ\x00\x00\x01\x90\x00\x00\x00\x14gXYZ\x00\x00\x01\xa4\x00\x00\x00\x14bXYZ\x00\x00\x01\xb8\x00\x00\x00\x14rTRC\x00\x00\x01\xcc\x00\x00\x00\x10chad\x00\x00\x01\xdc\x00\x00\x00,bTRC\x00\x00\x01\xcc\x00\x00\x00\x10gTRC\x00\x00\x01\xcc\x00\x00\x00\x10mluc\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x0cenUS\x00\x00\x00\x12\x00\x00\x00\x1c\x00L\x00G\x00 \x00H\x00D\x00R\x00 \x004\x00K\x00\x00mluc\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x0cenUS\x00\x00\x004\x00\x00\x00\x1c\x00C\x00o\x00p\x00y\x00r\x00i\x00g\x00h\x00t\x00 \x00A\x00p\x00p\x00l\x00e\x00 \x00I\x00n\x00c\x00.\x00,\x00 \x002\x000\x002\x003XYZ \x00\x00\x00\x00\x00\x00\xf6\xd6\x00\x01\x00\x00\x00\x00\xd3-XYZ \x00\x00\x00\x00\x00\x00y\xd7\x00\x008Q\x00\x00\x00\\XYZ \x00\x00\x00\x00\x00\x00T\xd9\x00\x00\xbaP\x00\x00\x0b\x9bXYZ \x00\x00\x00\x00\x00\x00(&\x00\x00\r`\x00\x00\xc75para\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\xf6\x04sf32\x00\x00\x00\x00\x00\x01\x0cr\x00\x00\x05\xf8\xff\xff\xf3\x1d\x00\x00\x07\xba\x00\x00\xfdr\xff\xff\xfb\x9d\xff\xff\xfd\xa4\x00\x00\x03\xd9\x00\x00\xc0q\xff\xdb\x00\x84\x00\x01\x01\x01\x01\x01\x01\x02\x01\x01\x02\x03\x02\x02\x02\x03\x04\x03\x03\x03\x03\x04\x06\x04\x04\x04\x04\x04\x06\x07\x06\x06\x06\x06\x06\x06\x07\x07\x07\x07\x07\x07\x07\x07\x08\x08\x08\x08\x08\x08\t\t\t\t\t\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x01\x02\x02\x02\x03\x03\x03\x05\x03\x03\x05\x0b\x08\x06\x08\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\xff\xdd\x00\x04\x00\x08\xff\xc0\x00\x11\x08\x00\x80\x00\x80\x03\x01"\x00\x02\x11\x01\x03\x11\x01\xff\xc4\x01\xa2\x00\x00\x01\x05\x01\x01\x01\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x01\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x10\x00\x02\x01\x03\x03\x02\x04\x03\x05\x05\x04\x04\x00\x00\x01}\x01\x02\x03\x00\x04\x11\x05\x12!1A\x06\x13Qa\x07"q\x142\x81\x91\xa1\x08#B\xb1\xc1\x15R\xd1\xf0$3br\x82\t\n\x16\x17\x18\x19\x1a%&\'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz\x83\x84\x85\x86\x87\x88\x89\x8a\x92\x93\x94\x95\x96\x97\x98\x99\x9a\xa2\xa3\xa4\xa5\xa6\xa7\xa8\xa9\xaa\xb2\xb3\xb4\xb5\xb6\xb7\xb8\xb9\xba\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xd2\xd3\xd4\xd5\xd6\xd7\xd8\xd9\xda\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\x01\x00\x03\x01\x01\x01\x01\x01\x01\x01\x01\x01\x00\x00\x00\x00\x00\x00\x01\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x11\x00\x02\x01\x02\x04\x04\x03\x04\x07\x05\x04\x04\x00\x01\x02w\x00\x01\x02\x03\x11\x04\x05!1\x06\x12AQ\x07aq\x13"2\x81\x08\x14B\x91\xa1\xb1\xc1\t#3R\xf0\x15br\xd1\n\x16$4\xe1%\xf1\x17\x18\x19\x1a&\'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz\x82\x83\x84\x85\x86\x87\x88\x89\x8a\x92\x93\x94\x95\x96\x97\x98\x99\x9a\xa2\xa3\xa4\xa5\xa6\xa7\xa8\xa9\xaa\xb2\xb3\xb4\xb5\xb6\xb7\xb8\xb9\xba\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xd2\xd3\xd4\xd5\xd6\xd7\xd8\xd9\xda\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xff\xda\x00\x0c\x03\x01\x00\x02\x11\x03\x11\x00?\x00\xf3\x98|;\xadN2\x96\xef\x8f\xa6*\xfax7^q\xfe\xa8\x0f\xa9\xc5[\x9b\xc7Z\xcc\x9f\xea\xc4h=\x85Qo\x17\xeb\xed\xd2}\xbf@+\xf4\x9d\x0f\xe6\x7f|\xb1\xff\x00\x08F\xbf\xfd\xc4\xff\x00\xbe\x851\xbc\x17\xaf/\xfc\xb3_\xc1\x85U\xff\x00\x84\xaf\xc4\x1f\xf3\xf2\x7f!\xfe\x14\xe1\xe2\xcf\x10\x0f\xf9x\'\xf0\x1f\xe1F\x81\xef\x91\xc9\xe1\x8dv1\x93n\xc7\xe9Yr\xd8\xde\xdb\x1f\xdfD\xc9\xf8WI\x17\x8d\xf5\xc8\xfa\x94o\xaa\xd6\xa4>?\x9c\x8d\x97\x96\xea\xe3\xbe\x0e?J4\x1d\xe5\xd8\xe3-\xb5=F\xc9\xb3m+&=\xeb\xa4\xb5\xf1\xce\xaf\x06\x04\xfbe\x03\xd4b\xb6\xbf\xb5\xfc\x1b\xaa\xfc\xb7\x90y,{\xed\xc7\xfe\x83H|#\xa0\xea\x1f6\x95w\x8c\xf6\xc8o\xd3\x8a=\tmuCc\xf1\xcd\x8c\x83\x17v\x99\xfab\x9e+\xbb\xa80a\x91\x97\x1e\x86\x8d\x03\x95\xf4f\xed\xdf\x84u\xbbN|\xad\xe0\x7fw\x9a\xc0xnm\xce$VB=\xb1]\x05\xa7\x8b\xf5\xbb\\\x03\'\x98=\x18WA\x17\x8em\xa7\x1bu+@\xde\xe3\x07\xf9\xd1\xa0^K\xa1\xc5A\xacj\xb6\xfcCp\xea=\x01\xad\x14\xf1f\xbd\x1fI\xc9\xfa\x80k\xab\xfe\xd0\xf0-\xdf3E\xe5\x9f\xf7O\xf4\xa0i\xde\x05\x9b\xee\xcc\x17\xfe\x05\x8a\x05u\xd8\xe6\xff\x00\xe13\xf1\x00\xff\x00\x96\xc3\xfe\xf9\x1f\xe1Mo\x18\xf8\x81\xbf\xe5\xb0\xfc\x14\x0f\xe9]?\xf6\x0f\x82O"\xec\x7f\xdf\xd5\xa3\xfb\x17\xc1\x11\xf2n\x81\xc7\xfd4\x14\x05\xe3\xd8\xe3e\xf1.\xb9(\xc1\xb9q\xf48\xac\xa9nn\xae\x1b\xf7\xae\xce}\xcek\xd1\xbc\xbf\x01Z\xf2\xcc\x1f\xf3?\xca\x93\xfe\x12o\x0cX\x8cXZ\xee?\xee\x8c~\xb4Xj]\x91\xc2\xda\xe8\xfa\x9d\xe1\xc5\xbc,\x7f\x0cWIk\xe0MR\\\x1b\x86X\x87\xe7R\\\xf8\xf3Pq\xb6\xd2$\x88~u\xcd\\\xeb\xba\xbd\xdf\xfa\xe9\xdb\xf0\xe3\xf9Q\xa0\xfd\xe3\xff\xd1\xcb\x7f\x1f\xc3\x18\xd9ik\x80=O\xf4\x02\xa9\xbf\xc4\x1b\xff\x00\xf9g\x04c\xeb\x9aH\xbc\x01|Fg\x99\x13\xda\xae\'\x80"\xff\x00\x96\xb7X\xfa\n\xfd+S\xf9\x97\xdcE\x0f\xf8X\x1a\xaf\xfc\xf1\x8b\xf2?\xe3N_\x88:\x97\xf1C\x17\xe1\x9f\xf1\xad\x1f\xf8@\xac\x7f\xe7\xec\xfeB\x9a|\x03k\xfc\x17\x7f\xa0\xa5\xa8^\x04q\xfcB~\x93[\x02=\x8e*_\xf8I\xbc/}\xc5\xfd\xa6\xdc\xf7\xda\rT\x7f\x87\xf7\x1f\xf2\xc6\xe1\x0f\xd4VU\xc7\x82u\xb8\x011\xaa\xc8\x07\xf7O\xf4\xa3P\xb4\r\xff\x00\xec_\x07\xea|\xd8\xcf\xe51\xed\x9f\xf1\xaa\x17\x1e\x02\xbd\x03u\x94\xc9...

On the migrations, I think that just means it's time to squash the migrations. That should get rid of the warning. Pre-commit should *always* run as part of CI. A...

> How does `migrate` behave when an existing project has applied the previous migrations (that were then squashed)? https://docs.djangoproject.com/en/5.0/topics/migrations/#migration-squashing What I believe will happen: For those who have already installed...

> I wanted to capture warnings as errors in `pytest` so that deprecation notices are exposed as early as possible. I think this may be a mistake. Tests are supposed...

@mschoettle I think I've been swayed. One scenario where this would be pretty valuable: Say a contributor adds a third-party package that itself raises Django deprecation warnings (my professional project...

This has been open for way too long. Closing stale PR.

I'm not 100% sure on this, but I believe you could do this yourself by providing your own logging backend. You'd modify the `crud_info` that's passed to `YourCustomLogger.crud`. See `DJANGO_EASY_AUDIT_LOGGING_BACKEND...

I found a workaround for this, but it's stinky. I'm still of the opinion that `object_id` should be a `GenericForeignKey`. ```python from django.contrib.contenttypes.admin import ( GenericInlineModelAdminChecks, GenericTabularInline, ) from easyaudit.models...

Thanks! The test run may fail on creating a coverage comment. The code may have to be merged for that step to have the necessary permissions.