devguide icon indicating copy to clipboard operation
devguide copied to clipboard

Fix links to missing CPython files

Open ezio-melotti opened this issue 3 years ago • 6 comments

This is a follow-up of #984:

There are a few broken links that I haven't touched yet:

(developer-workflow/grammar: line 40) broken https://github.com/python/cpython/blob/main/Include/Python-ast.h (developer-workflow/grammar: line 33) broken https://github.com/python/cpython/blob/main/Include/token.h (internals/compiler: line 516) broken https://github.com/python/cpython/blob/main/Include/code.h (internals/compiler: line 488) broken https://github.com/python/cpython/blob/main/Python/peephole.c

  • Include/Python-ast.h was removed by @vstinner
    • https://github.com/python/cpython/pull/24933
  • Include/token.h was removed by @vstinner
    • https://github.com/python/cpython/pull/92652
  • Include/code.h was removed by @vstinner
    • https://github.com/python/cpython/pull/32385
  • Python/peephole.c was removed by @markshannon
    • https://github.com/python/cpython/pull/21517

The respective sections in developer-workflow/grammar.rst and internals/compiler.rst might need to be revisited. @vstinner and @markshannon: can you advise on whether these are quick fixes that we can include in this PR or if they should be handled separately?

I found another file mentioned in the devguide that was deleted:

  • Python/wordcode_helpers.h was removed by @brandtbucher
    • https://github.com/python/cpython/pull/31543

ezio-melotti avatar Dec 09 '22 09:12 ezio-melotti

Include/Python-ast.h was removed by @vstinner

Not removed, read the commit: it was moved to Include/internal/pycore_ast.h.

Include/token.h was removed by @vstinner

Same, just renamed to to Include/internal/pycore_token.h.

I prefer to say "removed" for end users, since end users are not supposed to consume the internal C API.

Include/code.h was removed by @vstinner

This file was basically empty: you should use Include/cpython/code.h instead.

vstinner avatar Dec 13 '22 12:12 vstinner

Does this issue require more changes?

abdnafees avatar Mar 13 '23 06:03 abdnafees

I believe so, as most of the existing PRs focused on the existing :files: role rather than file paths using literals. You could consider looking through the various docs that discuss the CPython source tree and updating references to specific files where appropriate. I do note there are tons of missing references in the C-API page, but as that is currently being heavily modified by #1060 withmany of those updated already, I wouldn't touch it until after that is merged (and I plan to submit an immediate followup anyway which may address more, so I'd wait on that until given the go-ahead).

CAM-Gerlach avatar Mar 13 '23 09:03 CAM-Gerlach

Got it.

So for example here

Add the PyTestCapi_Init* function to Modules/_testcapi/parts.h Call the PyTestCapi_Init* from PyInit__testcapi in Modules/_testcapimodule.c.

Am I looking at the right place?

abdnafees avatar Mar 13 '23 09:03 abdnafees

Those are examples of things you would normally want to submit a PR changing, yes, but also examples of things on the C-API page that I mentioned is currently being modified by #1060 and will be further modified by a followup, so you shouldn't touch those until that's all done. If you find similar such references in other documents, those would likely be fair game to change as part of one or more PRs.

CAM-Gerlach avatar Mar 14 '23 01:03 CAM-Gerlach

Alright, got it. Thank you.

abdnafees avatar Mar 14 '23 06:03 abdnafees