eli-schwartz commented on code in PR #45854:
URL: https://github.com/apache/arrow/pull/45854#discussion_r2015333937


##########
dev/release/02-source-test.rb:
##########
@@ -84,7 +84,12 @@ def test_csharp_git_commit_information
   def test_python_version
     source
     Dir.chdir("#{@tag_name_no_rc}/python") do
-      sh("python3", "setup.py", "sdist")
+      FileUtils.mv("dummy.git", "../.git")
+      sh("python3", "-m", "pip", "install", "build")

Review Comment:
   Producing source archives has the classic problem of "okay. So what do you 
include in them, anyway?"
   
   Autotools solves this problem by:
   - tracking every direct target input file  and including it
   - requiring you to specify ALL headers as additional sources 
   - providing hooks for additional file lists
   - letting you run additional dist hooks to customize the archive
   
   Meson solves this by running `git archive` to generate the basis of the 
archive, and also providing dist hooks to further customize it.
   
   Meson-python runs `meson dist` internally, and also adds some additional 
pypi-specific metadata to make a pypi sdist.
   
   My $0.02: the term "sdist" is a bit magical and glamorous, by which I mean 
that people like to think about it as more special than it is. It's *just* a 
source archive. Autotools has been adding archive-specific files that aren't 
part of version control since before the Python programming language was 
invented. `PKG-INFO` isn't meaningfully different from `Makefile.in` and 
`configure` in terms of the general process of "I'd like to create a release 
artifact with some extra bits in it, then send it out for testing and voting".
   
   ...
   
   Anyway, it's definitely possible for meson to be adapted to build "dist 
tarballs" (to use the autotools term" from an existing dist tarball (and then 
meson-python will automatically do the same), but someone would have to define 
a plan of action for how meson would get that list of files to distribute.
   
   Or, I suppose the quick and dirty way is to simply run `git init . && git 
add --all . && git commit -m "dummy repo to aid meson dist"`.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscr...@arrow.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to