Mercurial > hgrepos > Python > apps > py-cutils
annotate _postprocess-sdist.py @ 355:f1ec825ec135
===== signature for changeset 90dc19a80c33
| author | Franz Glasner <fzglas.hg@dom66.de> |
|---|---|
| date | Tue, 01 Apr 2025 20:59:53 +0200 |
| parents | 57102b9d7ec9 |
| children | 2acf206a8fdf |
| rev | line source |
|---|---|
|
284
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
1 # -*- coding: utf-8 -*- |
|
288
57102b9d7ec9
Add some minimal docs into _postprocess-sdist.py
Franz Glasner <fzglas.hg@dom66.de>
parents:
287
diff
changeset
|
2 """Postprocress a .tar-sdist to include tests/data with symlinks as symlinks. |
|
57102b9d7ec9
Add some minimal docs into _postprocess-sdist.py
Franz Glasner <fzglas.hg@dom66.de>
parents:
287
diff
changeset
|
3 |
|
57102b9d7ec9
Add some minimal docs into _postprocess-sdist.py
Franz Glasner <fzglas.hg@dom66.de>
parents:
287
diff
changeset
|
4 Produce an sdist with all the data in :file:`tests/data/`:: |
|
57102b9d7ec9
Add some minimal docs into _postprocess-sdist.py
Franz Glasner <fzglas.hg@dom66.de>
parents:
287
diff
changeset
|
5 |
|
57102b9d7ec9
Add some minimal docs into _postprocess-sdist.py
Franz Glasner <fzglas.hg@dom66.de>
parents:
287
diff
changeset
|
6 rm -rf dist py_cutils.egg-info |
|
57102b9d7ec9
Add some minimal docs into _postprocess-sdist.py
Franz Glasner <fzglas.hg@dom66.de>
parents:
287
diff
changeset
|
7 python setup.py sdist |
|
57102b9d7ec9
Add some minimal docs into _postprocess-sdist.py
Franz Glasner <fzglas.hg@dom66.de>
parents:
287
diff
changeset
|
8 python _postprocess-sdist.py |
|
57102b9d7ec9
Add some minimal docs into _postprocess-sdist.py
Franz Glasner <fzglas.hg@dom66.de>
parents:
287
diff
changeset
|
9 gzip dist/*.tar |
|
284
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
10 |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
11 """ |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
12 |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
13 from __future__ import print_function, absolute_import |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
14 |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
15 try: |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
16 from configparser import ConfigParser |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
17 except ImportError: |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
18 from ConfigParser import SafeConfigParser as ConfigParser |
|
285
39a19c008708
Now dynamically the version attribute from setup.cfg
Franz Glasner <fzglas.hg@dom66.de>
parents:
284
diff
changeset
|
19 import importlib |
|
284
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
20 import io |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
21 import os |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
22 import tarfile |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
23 |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
24 |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
25 def main(): |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
26 with io.open("setup.cfg", "rt", encoding="utf-8") as cfgfile: |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
27 cp = ConfigParser() |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
28 if hasattr(cp, "read_file"): |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
29 cp.read_file(cfgfile, "setup.cfg") |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
30 else: |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
31 cp.readfp(cfgfile, "setup.cfg") |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
32 project_name = cp.get("metadata", "name") |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
33 project_version = cp.get("metadata", "version") |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
34 if project_version.startswith("attr:"): |
|
285
39a19c008708
Now dynamically the version attribute from setup.cfg
Franz Glasner <fzglas.hg@dom66.de>
parents:
284
diff
changeset
|
35 vermodname, dummy, vermodattr = (project_version[5:] |
|
39a19c008708
Now dynamically the version attribute from setup.cfg
Franz Glasner <fzglas.hg@dom66.de>
parents:
284
diff
changeset
|
36 .strip() |
|
39a19c008708
Now dynamically the version attribute from setup.cfg
Franz Glasner <fzglas.hg@dom66.de>
parents:
284
diff
changeset
|
37 .rpartition('.')) |
|
39a19c008708
Now dynamically the version attribute from setup.cfg
Franz Glasner <fzglas.hg@dom66.de>
parents:
284
diff
changeset
|
38 assert dummy is not None and vermodattr is not None |
|
39a19c008708
Now dynamically the version attribute from setup.cfg
Franz Glasner <fzglas.hg@dom66.de>
parents:
284
diff
changeset
|
39 vermod = importlib.import_module(vermodname) |
|
39a19c008708
Now dynamically the version attribute from setup.cfg
Franz Glasner <fzglas.hg@dom66.de>
parents:
284
diff
changeset
|
40 project_version = getattr(vermod, vermodattr) |
|
286
9518944ed42e
Do not handle "file:" version specifications yet
Franz Glasner <fzglas.hg@dom66.de>
parents:
285
diff
changeset
|
41 elif project_version.startswith("file:"): |
|
285
39a19c008708
Now dynamically the version attribute from setup.cfg
Franz Glasner <fzglas.hg@dom66.de>
parents:
284
diff
changeset
|
42 assert False |
|
284
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
43 # |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
44 # Compressed tar files cannot be modified by Python: make sure the |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
45 # originally generated archive is uncompressed. |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
46 # |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
47 assert cp.get("sdist", "formats") == "tar" |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
48 |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
49 archive_name = "{}-{}.tar".format(project_name, project_version) |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
50 archive_path = "dist/" + archive_name |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
51 assert os.path.isfile(archive_path) |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
52 |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
53 # the directory within the archive |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
54 archive_path_prefix = "{}-{}".format(project_name, project_version) |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
55 |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
56 egg_directory = "{}.egg-info".format(project_name.replace("-", "_")) |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
57 assert os.path.isdir(egg_directory) |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
58 sources_txt_path = "{}/SOURCES.txt".format(egg_directory) |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
59 sources_txt_arcname = "{}/{}/SOURCES.txt".format( |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
60 archive_path_prefix, |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
61 egg_directory) |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
62 |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
63 with tarfile.TarFile(archive_path, "r") as tf: |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
64 sf = tf.extractfile(sources_txt_arcname) |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
65 try: |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
66 sources_txt = sf.read() |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
67 finally: |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
68 sf.close() |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
69 |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
70 with tarfile.TarFile(archive_path, "a") as tf: |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
71 arcname = "{}/tests/data".format(archive_path_prefix) |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
72 try: |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
73 info = tf.getmember(arcname) |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
74 except KeyError: |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
75 pass |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
76 else: |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
77 raise RuntimeError("already postprocessed") |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
78 pre_names = set(tf.getnames()) |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
79 tf.add("tests/data", arcname=arcname, recursive=True) |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
80 |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
81 # |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
82 # Determine the new files and symlinks that are to be added |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
83 # to SOURCES.txt. Skip directories. |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
84 # |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
85 post_names = set(tf.getnames()) |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
86 new_names = list(post_names - pre_names) |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
87 new_names.sort() |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
88 new_sources = [] |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
89 |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
90 for np in new_names: |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
91 nn = np[len(archive_path_prefix)+1:] |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
92 info = tf.getmember(np) |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
93 if not info.isdir(): |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
94 new_sources.append(nn) |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
95 |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
96 # Augment SOURCES.txt and add it to the archive |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
97 sources_info = tf.gettarinfo( |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
98 sources_txt_path, arcname=sources_txt_arcname) |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
99 sf = io.BytesIO() |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
100 sf.write(sources_txt) |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
101 if not sources_txt.endswith(b'\n'): |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
102 sf.write(b'\n') |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
103 sf.write(b('\n'.join(new_sources))) |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
104 sources_info.size = len(sf.getvalue()) |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
105 sf.seek(0) |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
106 tf.addfile(sources_info, sf) |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
107 |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
108 |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
109 def b(buf, encoding="ascii"): |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
110 if isinstance(buf, bytes): |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
111 return buf |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
112 else: |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
113 return buf.encode(encoding) |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
114 |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
115 |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
116 if __name__ == "__main__": |
|
b65d25882e44
REFACTOR: sdist generation: postprocess an sdist to include symbolic links as symbolic links.
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff
changeset
|
117 main() |
