Simon Willison

Results 2431 comments of Simon Willison

There are quite a few challenges in building such a feature. For smaller packages, writing code which pulls a .tar.gz and turns it into a file listing / visible source...

One problem that is more specific to PyPI is that some packages can be uploaded in multiple formats - different wheels for example. Malicious code could potentially be hidden in...

... and while I'm throwing around crazy ideas: a really neat implementation of this would include a way to render diffsbetween different versions. Now we are re-implementing a non-trivial portion...

npm COO [Laurie Voss](https://twitter.com/seldo/status/1067274333985198080) says about this suggestion: > One issue you don't mention is that it creates a simply enormous vector for spam and a distribution mechanism for illegal...

> We've got something like this now: https://inspector.pypi.io/ This is really neat, I love it! Exactly the kind of thing I was hoping for here. If you're worried about traffic...

Tried this: ```bash python -c 'import puremagic, pprint, sys; pprint.pprint(puremagic.magic_stream(open(sys.argv[-1], "rb")))' output.wav ``` And got: ```python [PureMagicWithConfidence(byte_match=b'RIFFH\xe0\x02\x00WAVE', offset=8, extension='.wav', mime_type='audio/wave', name='Waveform Audio File Format', confidence=0.8), PureMagicWithConfidence(byte_match=b'WAVEfmt ', offset=8, extension='.wav', mime_type='audio/x-wav',...

I had a similar issue on `llm-gemini` where `puremagic` was returning `audio/mpeg` for MP3 files but the Gemini AI wanted `audio/mp3`: - https://github.com/simonw/llm/issues/587#issuecomment-2439785140 It turned out in that case `puremagic`...

Is this PR complete? I see the bit where the `extra_body` is parsed and validated, but it doesn't seem to be added to the request anywhere?

Are you talking specifically about accessing metadata from HTML templates? That makes a lot of sense, I'll think about how this could work.

OK, I have an implementation of this. I realised that not ALL metadata should be inherited: it makes sense for source/source_url/license/license_url to be inherited, but it doesn't make sense for...