Show More
@@ -143,8 +143,7 b" today_fmt = '%B %d, %Y'" | |||
|
143 | 143 | |
|
144 | 144 | # Exclude these glob-style patterns when looking for source files. They are |
|
145 | 145 | # relative to the source/ directory. |
|
146 | exclude_patterns = ['whatsnew/pr/antigravity-feature.*', | |
|
147 | 'whatsnew/pr/incompat-switching-to-perl.*'] | |
|
146 | exclude_patterns = [] | |
|
148 | 147 | |
|
149 | 148 | |
|
150 | 149 | # If true, '()' will be appended to :func: etc. cross-reference text. |
@@ -22,20 +22,6 b' Need to be updated:' | |||
|
22 | 22 | |
|
23 | 23 | pr/* |
|
24 | 24 | |
|
25 | IPython 6 feature a major improvement in the completion machinery which is now | |
|
26 | capable of completing non-executed code. It is also the first version of IPython | |
|
27 | to stop compatibility with Python 2, which is still supported on the bugfix only | |
|
28 | 5.x branch. Read below to have a non-exhaustive list of new features. | |
|
29 | ||
|
30 | Make sure you have pip > 9.0 before upgrading. | |
|
31 | You should be able to update by using: | |
|
32 | ||
|
33 | .. code:: | |
|
34 | ||
|
35 | pip install ipython --upgrade | |
|
36 | ||
|
37 | ||
|
38 | ||
|
39 | 25 | |
|
40 | 26 | .. DO NOT EDIT THIS LINE BEFORE RELEASE. FEATURE INSERTION POINT. |
|
41 | 27 |
@@ -21,6 +21,7 b' development work they do here in a user friendly format.' | |||
|
21 | 21 | :maxdepth: 1 |
|
22 | 22 | |
|
23 | 23 | development |
|
24 | version7 | |
|
24 | 25 | version6 |
|
25 | 26 | github-stats-6 |
|
26 | 27 | version5 |
@@ -0,0 +1,5 b'' | |||
|
1 | Antigravity feature | |
|
2 | =================== | |
|
3 | ||
|
4 | Example new antigravity feature. Try ``import antigravity`` in a Python 3 | |
|
5 | console. |
@@ -0,0 +1,1 b'' | |||
|
1 | Starting with IPython 42, only perl code execution is allowed. See :ghpull:`42` |
@@ -1,3 +1,52 b'' | |||
|
1 | ============ | |
|
2 | 7.x Series | |
|
3 | ============ | |
|
4 | ||
|
5 | .. _whatsnew700: | |
|
6 | ||
|
7 | IPython 7.0.0 | |
|
8 | ============= | |
|
9 | ||
|
10 | .. warning:: | |
|
11 | ||
|
12 | IPython 7.0 is currently in Beta, Feedback on API/changes and | |
|
13 | addition/updates to this cahngelog are welcomed. | |
|
14 | ||
|
15 | Released .... ...., 2017 | |
|
16 | ||
|
17 | IPython 7 include major features improvement as you can read in the following | |
|
18 | changelog. This is also the second major version of IPython to stop support only | |
|
19 | Python 3 – starting at Python 3.4. Python 2 is still still community supported | |
|
20 | on the bugfix only 5.x branch, but we remind you that Python 2 EOL is Jan 1st | |
|
21 | 2020. | |
|
22 | ||
|
23 | We were able to backport bug fixes to the 5.x branch thanks to our backport bot which | |
|
24 | backported more than `70 Pull-Requests | |
|
25 | <https://github.com/ipython/ipython/pulls?page=3&q=is%3Apr+sort%3Aupdated-desc+author%3Aapp%2Fmeeseeksdev++5.x&utf8=%E2%9C%93>`_, but there are still many PRs that required manually work, and this is an area of the project were you can easily contribute by looking for `PRs still needed backport<https://github.com/ipython/ipython/issues?q=label%3A%22Still+Needs+Manual+Backport%22+is%3Aclosed+sort%3Aupdated-desc>`_ | |
|
26 | ||
|
27 | IPython 6.x branch will likely not see any further release unless we critical | |
|
28 | bugs are found. | |
|
29 | ||
|
30 | Make sure you have pip > 9.0 before upgrading. You should be able to update by simply runngin | |
|
31 | ||
|
32 | .. code:: | |
|
33 | ||
|
34 | pip install ipython --upgrade | |
|
35 | ||
|
36 | Or if you have conda installed: | |
|
37 | ||
|
38 | .. code:: | |
|
39 | ||
|
40 | conda install ipython | |
|
41 | ||
|
42 | ||
|
43 | ||
|
44 | Prompt Toolkit 2.0 | |
|
45 | ------------------ | |
|
46 | ||
|
47 | IPython 7.0+ now use ``prompt_toolkit 2.0``, if you still need to use earlier | |
|
48 | ``prompt_toolkit`` version you may need to pin IPython to ``<7.0``. | |
|
49 | ||
|
1 | 50 | Autowait: Asynchronous REPL |
|
2 | 51 | --------------------------- |
|
3 | 52 | |
@@ -62,7 +111,7 b' Asynchronous code in a Notebook interface or any other frontend using the' | |||
|
62 | 111 | Jupyter Protocol will need further updates of the IPykernel package. |
|
63 | 112 | |
|
64 | 113 |
Non-Asynchronous code |
|
65 | --------------------- | |
|
114 | ~~~~~~~~~~~~~~~~~~~~~ | |
|
66 | 115 | |
|
67 | 116 | As the internal API of IPython are now asynchronous, IPython need to run under |
|
68 | 117 | an even loop. In order to allow many workflow, (like using the ``%run`` magic, |
@@ -71,29 +120,95 b' is detected as not being asynchronous, IPython code is advanced via a' | |||
|
71 | 120 | pseudo-synchronous runner, and will not may not advance pending tasks. |
|
72 | 121 | |
|
73 | 122 | Change to Nested Embed |
|
74 | ---------------------- | |
|
123 | ~~~~~~~~~~~~~~~~~~~~~~ | |
|
75 | 124 | |
|
76 | 125 | The introduction of the ability to run async code had some effect on the |
|
77 | 126 | ``IPython.embed()`` API. By default embed will not allow you to run asynchronous |
|
78 | 127 | code unless a event loop is specified. |
|
79 | 128 | |
|
80 | 129 | Effects on Magics |
|
81 | ----------------- | |
|
130 | ~~~~~~~~~~~~~~~~~ | |
|
82 | 131 | |
|
83 | 132 | Some magics will not work with Async, and will need updates. Contribution |
|
84 | 133 | welcome. |
|
85 | 134 | |
|
86 | 135 | Expected Future changes |
|
87 | ----------------------- | |
|
136 | ~~~~~~~~~~~~~~~~~~~~~~~ | |
|
88 | 137 | |
|
89 | 138 | We expect more internal but public IPython function to become ``async``, and |
|
90 | 139 | will likely end up having a persisting event loop while IPython is running. |
|
91 | 140 | |
|
92 | 141 | Thanks |
|
93 | ------ | |
|
142 | ~~~~~~ | |
|
94 | 143 | |
|
95 | 144 | This took more than a year in the making, and the code was rebased a number of |
|
96 | 145 | time leading to commit authorship that may have been lost in the final |
|
97 | 146 | Pull-Request. Huge thanks to many people for contribution, discussion, code, |
|
98 | 147 | documentation, use-case: dalejung, danielballan, ellisonbg, fperez, gnestor, |
|
99 | 148 | minrk, njsmith, pganssle, tacaswell, takluyver , vidartf ... And many other. |
|
149 | ||
|
150 | ||
|
151 | Autoreload Improvment | |
|
152 | --------------------- | |
|
153 | ||
|
154 | The magic ``%autoreload 2`` now captures new methods added to classes. Earlier, only methods existing as of the initial import were being tracked and updated. | |
|
155 | ||
|
156 | This new feature helps dual environment development - Jupyter+IDE - where the code gradually moves from notebook cells to package files, as it gets structured. | |
|
157 | ||
|
158 | **Example**: An instance of the class `MyClass` will be able to access the method `cube()` after it is uncommented and the file `file1.py` saved on disk. | |
|
159 | ||
|
160 | ||
|
161 | ..code:: | |
|
162 | ||
|
163 | # notebook | |
|
164 | ||
|
165 | from mymodule import MyClass | |
|
166 | first = MyClass(5) | |
|
167 | ||
|
168 | .. code:: | |
|
169 | # mymodule/file1.py | |
|
170 | ||
|
171 | class MyClass: | |
|
172 | ||
|
173 | def __init__(self, a=10): | |
|
174 | self.a = a | |
|
175 | ||
|
176 | def square(self): | |
|
177 | print('compute square') | |
|
178 | return self.a*self.a | |
|
179 | ||
|
180 | # def cube(self): | |
|
181 | # print('compute cube') | |
|
182 | # return self.a*self.a*self.a | |
|
183 | ||
|
184 | ||
|
185 | ||
|
186 | ||
|
187 | Misc | |
|
188 | ---- | |
|
189 | ||
|
190 | The autoindent feature that was deprecated in 5.x was re-enabled and | |
|
191 | un-deprecated in :ghpull:`11257` | |
|
192 | ||
|
193 | Make ``%run -n -i ...`` work correctly. Earlier, if ``%run`` was passed both arguments, ``-n`` would be silently ignored. See :ghpull:`10308` | |
|
194 | ||
|
195 | ||
|
196 | ||
|
197 | ||
|
198 | ||
|
199 | Deprecations | |
|
200 | ------------ | |
|
201 | ||
|
202 | A couple of unused function and methods have been deprecated and will be removed | |
|
203 | in future versions: | |
|
204 | ||
|
205 | - ``IPython.utils.io.raw_print_err`` | |
|
206 | - ``IPython.utils.io.raw_print`` | |
|
207 | ||
|
208 | ||
|
209 | Backwards incompatible changes | |
|
210 | ------------------------------ | |
|
211 | ||
|
212 | * The API for transforming input before it is parsed as Python code has been | |
|
213 | completely redesigned, and any custom input transformations will need to be | |
|
214 | rewritten. See :doc:`/config/inputtransforms` for details of the new API. |
@@ -26,8 +26,11 b' def main():' | |||
|
26 | 26 | |
|
27 | 27 | with open(filename) as f: |
|
28 | 28 | data = f.read() |
|
29 | try: | |
|
29 | 30 | if data and data.splitlines()[1].startswith('='): |
|
30 | 31 | continue |
|
32 | except IndexError: | |
|
33 | pass | |
|
31 | 34 | |
|
32 | 35 | with open(filename, 'w') as f: |
|
33 | 36 | f.write(title+'\n') |
|
1 | NO CONTENT: file was removed |
|
1 | NO CONTENT: file was removed |
|
1 | NO CONTENT: file was removed |
|
1 | NO CONTENT: file was removed |
|
1 | NO CONTENT: file was removed |
General Comments 0
You need to be logged in to leave comments.
Login now