##// END OF EJS Templates
fix long description
Matthias Bussonnier -
Show More
@@ -0,0 +1,37 b''
1 IPython provides a rich toolkit to help you make the most out of using Python
2 interactively. Its main components are:
3
4 * A powerful interactive Python shell
5 * A `Jupyter <https://jupyter.org/>`_ kernel to work with Python code in Jupyter
6 notebooks and other interactive frontends.
7
8 The enhanced interactive Python shells have the following main features:
9
10 * Comprehensive object introspection.
11
12 * Input history, persistent across sessions.
13
14 * Caching of output results during a session with automatically generated
15 references.
16
17 * Extensible tab completion, with support by default for completion of python
18 variables and keywords, filenames and function keywords.
19
20 * Extensible system of 'magic' commands for controlling the environment and
21 performing many tasks related either to IPython or the operating system.
22
23 * A rich configuration system with easy switching between different setups
24 (simpler than changing $PYTHONSTARTUP environment variables every time).
25
26 * Session logging and reloading.
27
28 * Extensible syntax processing for special purpose situations.
29
30 * Access to the system shell with user-extensible alias system.
31
32 * Easily embeddable in other Python programs and GUIs.
33
34 * Integrated access to the pdb debugger and the Python profiler.
35
36 The latest development version is always available from IPython's `GitHub
37 site <http://github.com/ipython>`_.
@@ -8,6 +8,7 b' include mypy.ini'
8 include .mailmap
8 include .mailmap
9 include .flake8
9 include .flake8
10 include .pre-commit-config.yaml
10 include .pre-commit-config.yaml
11 include long_description.rst
11
12
12 recursive-exclude tools *
13 recursive-exclude tools *
13 exclude tools
14 exclude tools
@@ -4,44 +4,7 b' version = attr: IPython.core.release.__version__'
4 url = https://ipython.org
4 url = https://ipython.org
5 description = IPython: Productive Interactive Computing
5 description = IPython: Productive Interactive Computing
6 long_description_content_type = text/x-rst
6 long_description_content_type = text/x-rst
7 long_description = IPython provides a rich toolkit to help you make the most out of using Python
7 long_description = file: long_description.rst
8 interactively. Its main components are:
9
10 * A powerful interactive Python shell
11 * A `Jupyter <https://jupyter.org/>`_ kernel to work with Python code in Jupyter
12 notebooks and other interactive frontends.
13
14 The enhanced interactive Python shells have the following main features:
15
16 * Comprehensive object introspection.
17
18 * Input history, persistent across sessions.
19
20 * Caching of output results during a session with automatically generated
21 references.
22
23 * Extensible tab completion, with support by default for completion of python
24 variables and keywords, filenames and function keywords.
25
26 * Extensible system of 'magic' commands for controlling the environment and
27 performing many tasks related either to IPython or the operating system.
28
29 * A rich configuration system with easy switching between different setups
30 (simpler than changing $PYTHONSTARTUP environment variables every time).
31
32 * Session logging and reloading.
33
34 * Extensible syntax processing for special purpose situations.
35
36 * Access to the system shell with user-extensible alias system.
37
38 * Easily embeddable in other Python programs and GUIs.
39
40 * Integrated access to the pdb debugger and the Python profiler.
41
42 The latest development version is always available from IPython's `GitHub
43 site <http://github.com/ipython>`_.
44
45 license_file = LICENSE
8 license_file = LICENSE
46 project_urls =
9 project_urls =
47 Documentation = https://ipython.readthedocs.io/
10 Documentation = https://ipython.readthedocs.io/
@@ -16,8 +16,8 b' def build_release():'
16 # Build source and binary distros
16 # Build source and binary distros
17 sh(sdists)
17 sh(sdists)
18 buildwheels()
18 buildwheels()
19 # don't try to change, xz, bz2 deprecated.
19 sh(' '.join([sys.executable, 'tools/retar.py', 'dist/*.gz']))
20 sh(' '.join([sys.executable, 'tools/retar.py', 'dist/*.gz']))
20 sh(' '.join([sys.executable, 'tools/retar.py', 'dist/*.xz']))
21
21
22 if __name__ == '__main__':
22 if __name__ == '__main__':
23 build_release()
23 build_release()
@@ -71,7 +71,7 b" if 'upload' in sys.argv:"
71
71
72 print('3. Uploading to PyPI using twine')
72 print('3. Uploading to PyPI using twine')
73 cd(distdir)
73 cd(distdir)
74 call(['twine', 'upload'] + to_upload)
74 call(['twine', 'upload', '--verbose'] + to_upload)
75
75
76 else:
76 else:
77 # Build, but don't upload
77 # Build, but don't upload
@@ -37,8 +37,10 b' with open(path, "rb") as f:'
37 old_buf.seek(0)
37 old_buf.seek(0)
38 if path.name.endswith("gz"):
38 if path.name.endswith("gz"):
39 r_mode = "r:gz"
39 r_mode = "r:gz"
40 if path.name.endswith(("xz", "xz2")):
40 if path.name.endswith("bz2"):
41 r_mode = "r:xz"
41 r_mode = "r:bz2"
42 if path.name.endswith("xz"):
43 raise ValueError("XZ is deprecated but it's written nowhere")
42 old = tarfile.open(fileobj=old_buf, mode=r_mode)
44 old = tarfile.open(fileobj=old_buf, mode=r_mode)
43
45
44 buf = io.BytesIO()
46 buf = io.BytesIO()
@@ -69,10 +71,10 b' if r_mode == "r:gz":'
69 with open(path, "wb") as f:
71 with open(path, "wb") as f:
70 with gzip.GzipFile("", "wb", fileobj=f, mtime=timestamp) as gzf:
72 with gzip.GzipFile("", "wb", fileobj=f, mtime=timestamp) as gzf:
71 gzf.write(buf.read())
73 gzf.write(buf.read())
72 elif r_mode == "r:xz":
74 elif r_mode == "r:bz2":
73 import lzma
75 import bz2
74
76
75 with lzma.open(path, "wb") as f:
77 with bz2.open(path, "wb") as f:
76 f.write(buf.read())
78 f.write(buf.read())
77
79
78 else:
80 else:
@@ -18,7 +18,7 b" archive = '%s:%s' % (archive_user, archive_dir)"
18
18
19 # Build commands
19 # Build commands
20 # Source dists
20 # Source dists
21 sdists = "{python} setup.py sdist --formats=xztar,gztar".format(python=sys.executable)
21 sdists = "{python} setup.py sdist --formats=gztar".format(python=sys.executable)
22 # Binary dists
22 # Binary dists
23 def buildwheels():
23 def buildwheels():
24 sh("{python} setup.py bdist_wheel".format(python=sys.executable))
24 sh("{python} setup.py bdist_wheel".format(python=sys.executable))
General Comments 0
You need to be logged in to leave comments. Login now