From 9ae7b69a625f811cc9158cea876f57dd3ba3ee6d Mon Sep 17 00:00:00 2001 From: Andrew Janke Date: Tue, 18 Dec 2018 01:02:58 -0500 Subject: [PATCH 01/14] Don't qualify OS X version when saying what Python version it ships with --- docs/starting/install/osx.rst | 2 +- docs/starting/install3/osx.rst | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/starting/install/osx.rst b/docs/starting/install/osx.rst index df39fe6..654e9bb 100644 --- a/docs/starting/install/osx.rst +++ b/docs/starting/install/osx.rst @@ -10,7 +10,7 @@ Installing Python 2 on Mac OS X .. note:: Check out our :ref:`guide for installing Python 3 on OS X`. -The latest version of Mac OS X, High Sierra, **comes with Python 2.7 out of the box**. +**Mac OS X comes with Python 2.7 out of the box.** You do not need to install or configure anything else to use Python. Having said that, I would strongly recommend that you install the tools and libraries diff --git a/docs/starting/install3/osx.rst b/docs/starting/install3/osx.rst index 82b5349..52e0b75 100644 --- a/docs/starting/install3/osx.rst +++ b/docs/starting/install3/osx.rst @@ -9,7 +9,7 @@ Installing Python 3 on Mac OS X .. image:: /_static/photos/34435689480_2e6f358510_k_d.jpg -The latest version of Mac OS X, High Sierra, **comes with Python 2.7 out of the box**. +**Mac OS X comes with Python 2.7 out of the box.** You do not need to install or configure anything else to use Python 2. These instructions document the installation of Python 3. From 6749edc80a07d39fd4c5ab9d6607a720e1f0f39c Mon Sep 17 00:00:00 2001 From: Kevin D Barbour Date: Thu, 7 Feb 2019 08:45:55 -0500 Subject: [PATCH 02/14] Fix broken link to python-requests.org (http only) --- docs/dev/virtualenvs.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/dev/virtualenvs.rst b/docs/dev/virtualenvs.rst index 9f0390a..538bfdf 100644 --- a/docs/dev/virtualenvs.rst +++ b/docs/dev/virtualenvs.rst @@ -156,7 +156,7 @@ when you share your project with others. You should get output similar to this Adding requests to Pipfile's [packages]... P.S. You have excellent taste! ✨ 🍰 ✨ -.. _Requests: https://python-requests.org +.. _Requests: http://python-requests.org Using installed packages From 507281032e2a4bff921691aa424c20c541dae305 Mon Sep 17 00:00:00 2001 From: Marc Poulin Date: Fri, 8 Feb 2019 14:54:07 -0700 Subject: [PATCH 03/14] python-requests.org redirect Before, http://python-requests.org would redirect to http://docs.python-requests.org/en/master/ Now, page links to http://docs.python-requests.org/en/master/ directly. --- docs/dev/virtualenvs.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/dev/virtualenvs.rst b/docs/dev/virtualenvs.rst index 538bfdf..be9bd58 100644 --- a/docs/dev/virtualenvs.rst +++ b/docs/dev/virtualenvs.rst @@ -156,7 +156,7 @@ when you share your project with others. You should get output similar to this Adding requests to Pipfile's [packages]... P.S. You have excellent taste! ✨ 🍰 ✨ -.. _Requests: http://python-requests.org +.. _Requests: http://docs.python-requests.org/en/master/ Using installed packages From ff05d2f76c85b5c13d5c01884f331a58251de402 Mon Sep 17 00:00:00 2001 From: Christopher Snow Date: Fri, 8 Feb 2019 21:35:06 -0500 Subject: [PATCH 04/14] Fix inconsistency with virtualenv project folder naming, and a couple grammar checks. --- docs/dev/virtualenvs.rst | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/docs/dev/virtualenvs.rst b/docs/dev/virtualenvs.rst index be9bd58..3b6a25e 100644 --- a/docs/dev/virtualenvs.rst +++ b/docs/dev/virtualenvs.rst @@ -118,7 +118,7 @@ tutorial) and run: .. code-block:: console - $ cd myproject + $ cd project_folder $ pipenv install requests Pipenv will install the excellent `Requests`_ library and create a ``Pipfile`` @@ -225,7 +225,7 @@ Basic Usage .. code-block:: console - $ cd my_project_folder + $ cd project_folder $ virtualenv venv ``virtualenv venv`` will create a folder in the current directory which will @@ -260,19 +260,19 @@ or change the interpreter globally with an env variable in ``~/.bashrc``: $ source venv/bin/activate The name of the current virtual environment will now appear on the left of -the prompt (e.g. ``(venv)Your-Computer:your_project UserName$)`` to let you know +the prompt (e.g. ``(venv)Your-Computer:project_folder UserName$)`` to let you know that it's active. From now on, any package that you install using pip will be placed in the ``venv`` folder, isolated from the global Python installation. -For Windows, same command which is mentioned in step 1 can be used for creation of virtual environment. But, to activate, we use the following command. +For Windows, the same command mentioned in step 1 can be used to create a virtual environment. However, activating the environment requires a slightly different command. -Assuming that you are in project directory: +Assuming that you are in your project directory: -.. code-block:: powershell +.. code-block:: console - PS C:\Users\suryav> \venv\Scripts\activate + C:\Users\SomeUser\project_folder> venv\Scripts\activate -Install packages as usual, for example: +Install packages using the ``pip`` command: .. code-block:: console @@ -283,13 +283,13 @@ Install packages as usual, for example: .. code-block:: console - $ deactivate + $ deactivate This puts you back to the system's default Python interpreter with all its installed libraries. To delete a virtual environment, just delete its folder. (In this case, -it would be ``rm -rf my_project``.) +it would be ``rm -rf project_folder``.) After a while, though, you might end up with a lot of virtual environments littered across your system, and it's possible you'll forget their names or @@ -366,23 +366,23 @@ Basic Usage .. code-block:: console - $ mkvirtualenv my_project + $ mkvirtualenv project_folder -This creates the :file:`my_project` folder inside :file:`~/Envs`. +This creates the :file:`project_folder` folder inside :file:`~/Envs`. 2. Work on a virtual environment: .. code-block:: console - $ workon my_project + $ workon project_folder Alternatively, you can make a project, which creates the virtual environment, and also a project directory inside ``$WORKON_HOME``, which is ``cd``-ed into -when you ``workon myproject``. +when you ``workon project_folder``. .. code-block:: console - $ mkproject myproject + $ mkproject project_folder **virtualenvwrapper** provides tab-completion on environment names. It really helps when you have a lot of environments and have trouble remembering their From bd742f7bb6be7576f8e59e3349a339bbcae54236 Mon Sep 17 00:00:00 2001 From: Tom Nicholas <35968931+TomNicholas@users.noreply.github.com> Date: Mon, 11 Feb 2019 10:53:52 +0000 Subject: [PATCH 05/14] Add xarray to scientific.rst --- docs/scenarios/scientific.rst | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/docs/scenarios/scientific.rst b/docs/scenarios/scientific.rst index 3461bb3..cca2342 100644 --- a/docs/scenarios/scientific.rst +++ b/docs/scenarios/scientific.rst @@ -91,13 +91,24 @@ are available in the `matplotlib gallery Pandas ------ -`Pandas `_ is data manipulation library +`Pandas `_ is a data manipulation library based on NumPy which provides many useful functions for accessing, indexing, merging, and grouping data easily. The main data structure (DataFrame) is close to what could be found in the R statistical package; that is, heterogeneous data tables with name indexing, time series operations, and auto-alignment of data. +xarray +------ + +`xarray `_ is similar to Pandas, but it +is intended for wrapping multidimensional scientific data. By labelling the +data with dimensions, coordinates, and attributes, it makes complex +multidimensional operations clearer and more intuitive. It also wraps +matplotlib for quick plotting, and can apply most operations in parallel using +`dask `_. + + Rpy2 ---- From 7013647d927f0dc514bc5d1267515b0310060526 Mon Sep 17 00:00:00 2001 From: Anton Kochkov Date: Mon, 25 Feb 2019 16:39:54 +0800 Subject: [PATCH 06/14] Don't recommend Python 2 Library Switch the Further Reading section to Python 3 link --- docs/writing/structure.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/writing/structure.rst b/docs/writing/structure.rst index 842a44d..b536b59 100644 --- a/docs/writing/structure.rst +++ b/docs/writing/structure.rst @@ -675,7 +675,7 @@ by the ``with`` statement. CustomOpen is first instantiated and then its is finished executing, the ``__exit__`` method is then called. And now the generator approach using Python's own -`contextlib `_: +`contextlib `_: .. code-block:: python @@ -890,5 +890,5 @@ Runners Further Reading *************** -- http://docs.python.org/2/library/ +- http://docs.python.org/3/library/ - http://www.diveintopython.net/toc/index.html From 907d9a7b8223eed22c6515c676fc81fe6d5cc871 Mon Sep 17 00:00:00 2001 From: Dave Mackey Date: Mon, 25 Feb 2019 21:42:38 -0500 Subject: [PATCH 07/14] Removed extraneous "by" and unnecessary "especially" from cli.rst --- docs/scenarios/cli.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/scenarios/cli.rst b/docs/scenarios/cli.rst index 44feade..08e8046 100644 --- a/docs/scenarios/cli.rst +++ b/docs/scenarios/cli.rst @@ -50,8 +50,8 @@ Plac `Plac `_ is a simple wrapper over the Python standard library `argparse `_, which hides most of its complexity by using a declarative interface: the -argument parser is inferred rather than written down by imperatively. This -module targets especially unsophisticated users, programmers, sysadmins, +argument parser is inferred rather than written down imperatively. This +module targets unsophisticated users, programmers, sysadmins, scientists, and in general people writing throw-away scripts for themselves, who choose to create a command-line interface because it is quick and simple. From 188e336732943bb039a345fd1c2f7adaad74f4f5 Mon Sep 17 00:00:00 2001 From: Dave Mackey Date: Mon, 25 Feb 2019 22:09:07 -0500 Subject: [PATCH 08/14] - Changing PyGTk to be less verbose, formatted as note. - Updated PyjamasDesktop to Pyjs Desktop, streamlined description -- Removed link to Python wiki entry, content outdated - Updated link for wxPython, it had changed --- docs/scenarios/gui.rst | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/docs/scenarios/gui.rst b/docs/scenarios/gui.rst index e012048..ed9e2a5 100644 --- a/docs/scenarios/gui.rst +++ b/docs/scenarios/gui.rst @@ -33,11 +33,7 @@ Cocoa GTk *** -PyGTK provides Python bindings for the GTK+ toolkit. Like the GTK+ library -itself, it is currently licensed under the GNU LGPL. It is worth noting that -PyGTK only currently supports the Gtk-2.X API (NOT Gtk-3.0). It is currently -recommended that PyGTK not be used for new projects and that existing -applications be ported from PyGTK to PyGObject. +.. note:: PyGTK provides Python bindings for the GTK+ toolkit. However, it has been superseded by PyGObject. PyGTK should not be used for new projects and existing projects should be ported to PyGObject. ******************** @@ -101,17 +97,14 @@ http://www.riverbankcomputing.co.uk/software/pyqt/download ***************************** -PyjamasDesktop (pyjs Desktop) +Pyjs Desktop (formerly Pyjamas Desktop) ***************************** -PyjamasDesktop is a port of Pyjamas. PyjamasDesktop is application widget set -for desktop and a cross-platform framework. (After release v0.6 PyjamasDesktop -is a part of Pyjamas (Pyjs)). Briefly, it allows the exact same Python web +Pyjs Desktop is a application widget set for desktop and a cross-platform framework. It allows the exact same Python web application source code to be executed as a standalone desktop application. -`Python Wiki for PyjamasDesktop `_. -The main website: `pyjs Desktop `_. +The main website: `pyjs `_. ** @@ -177,5 +170,5 @@ extension module (native code) that wraps the popular wxWidgets cross platform GUI library, which is written in C++. **Install (Stable) wxPython** -*go to http://www.wxpython.org/download.php#stable and download the appropriate +*go to https://www.wxpython.org/pages/downloads/ and download the appropriate package for your OS.* From 554fb163d9857d8c7c57c710f9859e07e261e8b6 Mon Sep 17 00:00:00 2001 From: Dave Mackey Date: Mon, 25 Feb 2019 22:29:18 -0500 Subject: [PATCH 09/14] - Reformatting first paragraph of cli to conform to 78 character width. -- Same for Click, Cement. - In gui, similarly for Camelot, PyGObject, Kivy, Pyjs Desktop, Qt -- PySimpleGUI, Toga, TkInterwxPython --- docs/scenarios/cli.rst | 31 +++++++++++----------- docs/scenarios/gui.rst | 60 ++++++++++++++++++++++++------------------ 2 files changed, 49 insertions(+), 42 deletions(-) diff --git a/docs/scenarios/cli.rst b/docs/scenarios/cli.rst index 08e8046..f90010e 100644 --- a/docs/scenarios/cli.rst +++ b/docs/scenarios/cli.rst @@ -5,13 +5,12 @@ Command-line Applications .. image:: /_static/photos/34435690330_11930b5987_k_d.jpg -Command-line applications, also referred to as -`Console Applications `_, -are computer programs designed to be used from a text interface, such as a -`shell `_. Command-line -applications usually accept various inputs as arguments, often referred to as -parameters or sub-commands, as well as options, often referred to as flags or -switches. +Command-line applications, also referred to as `Console Applications +`_, are computer programs +designed to be used from a text interface, such as a `shell +`_. Command-line applications +usually accept various inputs as arguments, often referred to as parameters or +sub-commands, as well as options, often referred to as flags or switches. Some popular command-line applications include: @@ -29,9 +28,9 @@ Click ***** `click `_ is a Python package for creating -command-line interfaces in a composable way with as little code as -possible. This “Command-Line Interface Creation Kit” is highly -configurable but comes with good defaults out of the box. +command-line interfaces in a composable way with as little code as possible. +This “Command-Line Interface Creation Kit” is highly configurable but comes +with good defaults out of the box. ****** @@ -72,12 +71,12 @@ sub-command to do the work. Cement ****** -`Cement `_ is an advanced CLI Application Framework. -Its goal is to introduce a standard and feature-full platform -for both simple and complex command line applications as well -as support rapid development needs without sacrificing quality. -Cement is flexible, and its use cases span from the simplicity of a micro-framework -to the complexity of a mega-framework. +`Cement `_ is an advanced CLI Application +Framework. Its goal is to introduce a standard and feature-full platform for +both simple and complex command line applications as well as support rapid +development needs without sacrificing quality. Cement is flexible, and its use +cases span from the simplicity of a micro-framework to the complexity of a +mega-framework. *********** diff --git a/docs/scenarios/gui.rst b/docs/scenarios/gui.rst index ed9e2a5..520b3de 100644 --- a/docs/scenarios/gui.rst +++ b/docs/scenarios/gui.rst @@ -14,8 +14,8 @@ Camelot ******* `Camelot `_ provides components for building -applications on top of Python, SQLAlchemy, and Qt. It is inspired by -the Django admin interface. +applications on top of Python, SQLAlchemy, and Qt. It is inspired by the Django +admin interface. The main resource for information is the website: http://www.python-camelot.com @@ -40,8 +40,10 @@ GTk PyGObject aka (PyGi) ******************** -`PyGObject `_ provides Python bindings which gives access to the entire GNOME software platform. -It is fully compatible with GTK+ 3. Here is a tutorial to get started with `Python GTK+ 3 Tutorial `_. +`PyGObject `_ provides Python +bindings which gives access to the entire GNOME software platform. It is fully +compatible with GTK+ 3. Here is a tutorial to get started with `Python GTK+ 3 +Tutorial `_. `API Reference `_ @@ -52,8 +54,8 @@ Kivy `Kivy `_ is a Python library for development of multi-touch enabled media rich applications. The aim is to allow for quick and easy -interaction design and rapid prototyping, while making your code reusable -and deployable. +interaction design and rapid prototyping, while making your code reusable and +deployable. Kivy is written in Python, based on OpenGL, and supports different input devices such as: Mouse, Dual Mouse, TUIO, WiiMote, WM_TOUCH, HIDtouch, Apple's products, @@ -100,8 +102,9 @@ http://www.riverbankcomputing.co.uk/software/pyqt/download Pyjs Desktop (formerly Pyjamas Desktop) ***************************** -Pyjs Desktop is a application widget set for desktop and a cross-platform framework. It allows the exact same Python web -application source code to be executed as a standalone desktop application. +Pyjs Desktop is a application widget set for desktop and a cross-platform +framework. It allows the exact same Python web application source code to be +executed as a standalone desktop application. The main website: `pyjs `_. @@ -111,35 +114,40 @@ The main website: `pyjs `_. Qt ** -`Qt `_ is a cross-platform application framework that -is widely used for developing software with a GUI but can also be used for -non-GUI applications. +`Qt `_ is a cross-platform application framework that is +widely used for developing software with a GUI but can also be used for non-GUI +applications. *********** PySimpleGUI *********** -`PySimpleGUI `_ is a wrapper for Tkinter and Qt (others on the way). The amount of code required to implement custom GUIs is much shorter using PySimpleGUI than if the same GUI were written directly using Tkinter or Qt. PySimpleGUI code can be "ported" between GUI frameworks by changing import statements. +`PySimpleGUI `_ is a wrapper for Tkinter +and Qt (others on the way). The amount of code required to implement custom +GUIs is much shorter using PySimpleGUI than if the same GUI were written +directly using Tkinter or Qt. PySimpleGUI code can be "ported" between GUI +frameworks by changing import statements. .. code-block:: console $ pip install pysimplegui -PySimpleGUI is contained in a single PySimpleGUI.py file. Should pip installation be impossible, copying the PySimpleGUI.py file into a project's folder is all that's required to import and begin using. +PySimpleGUI is contained in a single PySimpleGUI.py file. Should pip +installation be impossible, copying the PySimpleGUI.py file into a project's +folder is all that's required to import and begin using. **** Toga **** -`Toga `_ is a Python native, OS -native, cross platform GUI toolkit. Toga consists of a library of base -components with a shared interface to simplify platform-agnostic GUI -development. +`Toga `_ is a Python native, OS native, +cross platform GUI toolkit. Toga consists of a library of base components with a +shared interface to simplify platform-agnostic GUI development. -Toga is available on mOS, Windows, Linux (GTK), and mobile platforms such -as Android and iOS. +Toga is available on mOS, Windows, Linux (GTK), and mobile platforms such as +Android and iOS. ** @@ -154,8 +162,8 @@ Both Tk and Tkinter are available on most Unix platforms, as well as on Windows and Macintosh systems. Starting with the 8.0 release, Tk offers native look and feel on all platforms. -There's a good multi-language Tk tutorial with Python examples at -`TkDocs `_. There's more information +There's a good multi-language Tk tutorial with Python examples at `TkDocs +`_. There's more information available on the `Python Wiki `_. @@ -163,11 +171,11 @@ available on the `Python Wiki `_. wxPython ******** -wxPython is a GUI toolkit for the Python programming language. It allows -Python programmers to create programs with a robust, highly functional -graphical user interface, simply and easily. It is implemented as a Python -extension module (native code) that wraps the popular wxWidgets cross platform -GUI library, which is written in C++. +wxPython is a GUI toolkit for the Python programming language. It allows Python +programmers to create programs with a robust, highly functional graphical user +interface, simply and easily. It is implemented as a Python extension module +(native code) that wraps the popular wxWidgets cross platform GUI library, which +is written in C++. **Install (Stable) wxPython** *go to https://www.wxpython.org/pages/downloads/ and download the appropriate From 8c7e00814751dc5b048dc9c235fc72e2b91496c7 Mon Sep 17 00:00:00 2001 From: Dave Mackey Date: Tue, 26 Feb 2019 08:26:03 -0500 Subject: [PATCH 10/14] - Updating link to Dive Into Python --- docs/writing/structure.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/writing/structure.rst b/docs/writing/structure.rst index b536b59..3cf38fc 100644 --- a/docs/writing/structure.rst +++ b/docs/writing/structure.rst @@ -891,4 +891,4 @@ Further Reading *************** - http://docs.python.org/3/library/ -- http://www.diveintopython.net/toc/index.html +- https://www.diveinto.org/python3/ From 011423c6514d202c7e5d7d503b094bac6232de52 Mon Sep 17 00:00:00 2001 From: Dave Mackey Date: Thu, 28 Feb 2019 09:02:27 -0500 Subject: [PATCH 11/14] - In scenarios/admin.rst, adding a StackOverflow link to explain eggs - In scenarios/clibs.rst, adding StackOverflow link to explain ABI -- In same, adding Microsoft Doc link to explain LoadLibrary -- Minor grammar changes -- Updating struct documentation link to use /3/ instead of /3.5/ --- docs/scenarios/admin.rst | 9 +++++---- docs/scenarios/clibs.rst | 10 +++++----- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/docs/scenarios/admin.rst b/docs/scenarios/admin.rst index e275018..826906a 100644 --- a/docs/scenarios/admin.rst +++ b/docs/scenarios/admin.rst @@ -392,10 +392,11 @@ Buildout `Buildout `_ is an open source software build tool. Buildout is created using the Python programming language. It implements a -principle of separation of configuration from the scripts that do the setting up. -Buildout is primarily used to download and set up dependencies in Python eggs -format of the software being developed or deployed. Recipes for build tasks in any -environment can be created, and many are already available. +principle of separation of configuration from the scripts that do the setting +up. Buildout is primarily used to download and set up dependencies in `Python +eggs `_ +format of the software being developed or deployed. Recipes for build tasks in +any environment can be created, and many are already available. ******* diff --git a/docs/scenarios/clibs.rst b/docs/scenarios/clibs.rst index 5470576..13c9e48 100644 --- a/docs/scenarios/clibs.rst +++ b/docs/scenarios/clibs.rst @@ -12,9 +12,9 @@ C Foreign Function Interface `CFFI `_ provides a simple to use mechanism for interfacing with C from both CPython and PyPy. It supports two -modes: an inline ABI compatibility mode (example provided below), which allows +modes: an inline `ABI `_ compatibility mode (example provided below), which allows you to dynamically load and run functions from executable modules (essentially -exposing the same functionality as LoadLibrary or dlopen), and an API mode, +exposing the same functionality as `LoadLibrary `_ or `dlopen `_), and an API mode, which allows you to build C extension modules. ABI Interaction @@ -41,13 +41,13 @@ library for interfacing with C/C++ from CPython, and it provides not only full access to the native C interface of most major operating systems (e.g., kernel32 on Windows, or libc on \*nix), but also provides support for loading and interfacing with dynamic libraries, such as DLLs or shared objects, at -runtime. It does bring along with it a whole host of types for interacting +runtime. It brings along with it a whole host of types for interacting with system APIs, and allows you to rather easily define your own complex types, such as structs and unions, and allows you to modify things such as padding and alignment, if needed. It can be a bit crufty to use, but in -conjunction with the `struct `_ +conjunction with the `struct `_ module, you are essentially provided full control over how your data types get -translated into something usable by a pure C(++) method. +translated into something usable by a pure C/C++ method. Struct Equivalents ~~~~~~~~~~~~~~~~~~ From 808eb3a28655c478fb7374436eb4c91c7a422555 Mon Sep 17 00:00:00 2001 From: Andrew Janke Date: Tue, 18 Dec 2018 02:05:53 -0500 Subject: [PATCH 12/14] Fix redirected and broken links --- docs/_templates/sidebarintro.html | 10 ++++----- docs/conf.py | 2 +- docs/dev/env.rst | 34 ++++++++++++++--------------- docs/dev/virtualenvs.rst | 2 +- docs/intro/duction.rst | 6 +++--- docs/intro/learning.rst | 36 ++++++++++++++++--------------- docs/intro/news.rst | 8 +++---- docs/notes/contribute.rst | 2 +- docs/scenarios/cli.rst | 2 +- docs/scenarios/client.rst | 2 +- docs/scenarios/db.rst | 2 +- docs/scenarios/network.rst | 8 +++---- docs/scenarios/scientific.rst | 2 +- docs/scenarios/speed.rst | 8 +++---- docs/scenarios/xml.rst | 2 +- docs/shipping/freezing.rst | 4 ++-- docs/shipping/packaging.rst | 8 +++---- docs/starting/install/linux.rst | 5 ++--- docs/starting/install/osx.rst | 8 +++---- docs/starting/install/win.rst | 6 +++--- docs/starting/install3/linux.rst | 5 ++--- docs/starting/install3/osx.rst | 8 +++---- docs/starting/install3/win.rst | 4 ++-- docs/writing/logging.rst | 14 ++++++------ docs/writing/style.rst | 6 +++--- docs/writing/tests.rst | 2 +- 26 files changed, 98 insertions(+), 98 deletions(-) diff --git a/docs/_templates/sidebarintro.html b/docs/_templates/sidebarintro.html index 1752725..98284ec 100644 --- a/docs/_templates/sidebarintro.html +++ b/docs/_templates/sidebarintro.html @@ -59,8 +59,8 @@

Useful Links

@@ -69,8 +69,8 @@
  • English
  • French
  • Chinese
  • -
  • Japanese
  • +
  • Japanese
  • Korean
  • -
  • Filipino
  • -
  • Brazilian Portuguese
  • +
  • Filipino
  • +
  • Brazilian Portuguese
  • diff --git a/docs/conf.py b/docs/conf.py index 974736f..64e78e4 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -46,7 +46,7 @@ master_doc = 'index' # General information about the project. project = u'pythonguide' -copyright = u'2011–2018 Kenneth Reitz & Real Python. CC BY-NC-SA 3.0' +copyright = u'2011–2018 Kenneth Reitz & Real Python. CC BY-NC-SA 3.0' # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the diff --git a/docs/dev/env.rst b/docs/dev/env.rst index 042d42d..bc754e4 100644 --- a/docs/dev/env.rst +++ b/docs/dev/env.rst @@ -87,10 +87,10 @@ using ```` key or any other customized keys. .. _indent: http://www.vim.org/scripts/script.php?script_id=974 .. _syntax: http://www.vim.org/scripts/script.php?script_id=790 -.. _Pyflakes: http://pypi.python.org/pypi/pyflakes/ -.. _pycodestyle: https://pypi.python.org/pypi/pycodestyle/ -.. _syntastic: https://github.com/scrooloose/syntastic -.. _Python-mode: https://github.com/klen/python-mode +.. _Pyflakes: http://pypi.org/project/pyflakes/ +.. _pycodestyle: https://pypi.org/project/pycodestyle/ +.. _syntastic: https://github.com/vim-syntastic/syntastic +.. _Python-mode: https://github.com/python-mode/python-mode .. _SuperTab: http://www.vim.org/scripts/script.php?script_id=1643 .. _vim-flake8: https://github.com/nvie/vim-flake8 @@ -103,7 +103,7 @@ Emacs user is `Python Programming in Emacs`_ at EmacsWiki. 1. Emacs itself comes with a Python mode. -.. _Python Programming in Emacs: http://emacswiki.org/emacs/PythonProgrammingInEmacs +.. _Python Programming in Emacs: https://www.emacswiki.org/emacs/PythonProgrammingInEmacs TextMate -------- @@ -135,7 +135,7 @@ Atom Atom is web native (HTML, CSS, JS), focusing on modular design and easy plugin development. It comes with native package control and a plethora of packages. Recommended for Python development is -`Linter `_ combined with +`Linter `_ combined with `linter-flake8 `_. @@ -163,7 +163,7 @@ MIT licensed. Enthought Canopy ---------------- -`Enthought Canopy `_ is a Python +`Enthought Canopy `_ is a Python IDE which is focused towards Scientists and Engineers as it provides pre installed libraries for data analysis. @@ -171,13 +171,13 @@ Eclipse ------- The most popular Eclipse plugin for Python development is Aptana's -`PyDev `_. +`PyDev `_. Komodo IDE ---------- -`Komodo IDE `_ is developed by +`Komodo IDE `_ is developed by ActiveState and is a commercial IDE for Windows, Mac, and Linux. `KomodoEdit `_ is the open source alternative. @@ -188,8 +188,8 @@ Spyder `Spyder `_ is an IDE specifically geared toward working with scientific Python libraries (namely -`SciPy `_). It includes integration with pyflakes_, -`pylint `_ and +`SciPy `_). It includes integration with pyflakes_, +`pylint `_ and `rope `_. Spyder is open source (free), offers code completion, syntax highlighting, @@ -242,13 +242,13 @@ Virtual Environments Virtual Environments provide a powerful way to isolate project package dependencies. This means that you can use packages particular to a Python project without installing them system wide and thus avoiding potential version conflicts. To start using and see more information: -`Virtual Environments `_ docs. +`Virtual Environments `_ docs. pyenv ----- -`pyenv `_ is a tool to allow multiple versions +`pyenv `_ is a tool to allow multiple versions of the Python interpreter to be installed at the same time. This solves the problem of having different projects requiring different versions of Python. For example, it becomes very easy to install Python 2.7 for compatibility in @@ -264,7 +264,7 @@ pyenv. pyenv then works out which version of Python should be run based on environment variables, ``.python-version`` files, and the global default. pyenv isn't a tool for managing virtual environments, but there is the plugin -`pyenv-virtualenv `_ which automates +`pyenv-virtualenv `_ which automates the creation of different environments, and also makes it possible to use the existing pyenv tools to switch to different environments based on environment variables or ``.python-version`` files. @@ -314,7 +314,7 @@ To download and install IPython with all its optional dependencies for the noteb BPython ------- -`bpython `_ is an alternative interface to the +`bpython `_ is an alternative interface to the Python interpreter for Unix-like operating systems. It has the following features: @@ -334,8 +334,8 @@ features: ptpython -------- -`ptpython `_ is a REPL build -on top of the `prompt_toolkit `_ +`ptpython `_ is a REPL build +on top of the `prompt_toolkit `_ library. It is considered to be an alternative to BPython_. Features include: * Syntax highlighting diff --git a/docs/dev/virtualenvs.rst b/docs/dev/virtualenvs.rst index be9bd58..dfb23b4 100644 --- a/docs/dev/virtualenvs.rst +++ b/docs/dev/virtualenvs.rst @@ -200,7 +200,7 @@ Congratulations, you now know how to install and use Python packages! ✨ 🍰 Lower level: virtualenv ======================= -`virtualenv `_ is a tool to create +`virtualenv `_ is a tool to create isolated Python environments. virtualenv creates a folder which contains all the necessary executables to use the packages that a Python project would need. diff --git a/docs/intro/duction.rst b/docs/intro/duction.rst index 7619002..16baebc 100644 --- a/docs/intro/duction.rst +++ b/docs/intro/duction.rst @@ -28,11 +28,11 @@ include: object serialization, and much more. Additionally, the - `Python Package Index `_ is available + `Python Package Index `_ is available for users to submit their packages for widespread use, similar to - Perl's `CPAN `_. There is a thriving community + Perl's `CPAN `_. There is a thriving community of very powerful Python frameworks and tools like - the `Django `_ web framework and the + the `Django `_ web framework and the `NumPy `_ set of math routines. * **integration with other systems** diff --git a/docs/intro/learning.rst b/docs/intro/learning.rst index 6e2d0ea..e06e64d 100644 --- a/docs/intro/learning.rst +++ b/docs/intro/learning.rst @@ -41,14 +41,14 @@ thepythonguru.com is a tutorial focused on beginner programmers. It covers many in depth. It also teaches you some advanced constructs of Python like lambda expressions and regular expressions. And last it finishes off with the tutorial "How to access MySQL db using Python" - `Python for Beginners `_ + `Python for Beginners `_ Learn Python Interactive Tutorial ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Learnpython.org is an easy non-intimidating way to get introduced to Python. The website takes the same approach used on the popular -`Try Ruby `_ website. It has an interactive Python +`Try Ruby `_ website. It has an interactive Python interpreter built into the site that allows you to go through the lessons without having to install Python locally. @@ -65,9 +65,9 @@ resource for learning all aspects of the language. Learn Python Step by Step ~~~~~~~~~~~~~~~~~~~~~~~~~ -Techbeamers.com provides step-by-step tutorials to teach Python. Each tutorial is supplemented with logically added coding snippets and equips with a follow-up quiz on the subject learned. There is a section for `Python interview questions `_ to help job seekers. You can also read essential `Python tips `_ and learn `best coding practices `_ for writing quality code. Here, you'll get the right platform to learn Python quickly. +Techbeamers.com provides step-by-step tutorials to teach Python. Each tutorial is supplemented with logically added coding snippets and equips with a follow-up quiz on the subject learned. There is a section for `Python interview questions `_ to help job seekers. You can also read essential `Python tips `_ and learn `best coding practices `_ for writing quality code. Here, you'll get the right platform to learn Python quickly. -`Learn Python Basic to Advanced `_ +`Learn Python Basic to Advanced `_ Online Python Tutor @@ -108,7 +108,7 @@ Learn Python the Hard Way This is an excellent beginner programmer's guide to Python. It covers "hello world" from the console to the web. - `Learn Python the Hard Way `_ + `Learn Python the Hard Way `_ Crash into Python @@ -117,7 +117,7 @@ Crash into Python Also known as *Python for Programmers with 3 Hours*, this guide gives experienced developers from other languages a crash course on Python. - `Crash into Python `_ + `Crash into Python `_ Dive Into Python 3 @@ -161,11 +161,11 @@ For those used to languages and figuring out puzzles on their own, this can be a fun, attractive option. For those new to Python and programming, having an additional resource or reference will be helpful. - `Python Koans `_ + `Python Koans `_ More information about test driven development can be found at these resources: - `Test Driven Development `_ + `Test Driven Development `_ A Byte of Python @@ -178,13 +178,15 @@ no previous programming experience. `A Byte of Python for Python 3.x `_ -Learn to Program in Python with Codeacademy +Computer Science Path on Codecademy ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -A Codeacademy course for the absolute Python beginner. This free and interactive course provides and teaches the basics (and beyond) of Python programming while testing the user's knowledge in between progress. +A Codeacademy course for the absolute Python beginner. This free and interactive +course provides and teaches the basics (and beyond) of Python programming while +testing the user's knowledge in between progress. This course also features a built-in interpreter for receiving instant feedback on your learning. - `Learn to Program in Python with Codeacademy `_ + `Computer Science Path on Codecademy `_ Code the blocks @@ -220,7 +222,7 @@ pages, it is a very brief overview of some of the most common adapations programmers need to make to become efficient intermediate level Python programmers. - `Effective Python `_ + `Effective Python `_ ******** @@ -251,7 +253,7 @@ and eventually an application, including a chapter on using zc.buildout. Later chapters detail best practices such as writing documentation, test-driven development, version control, optimization, and profiling. - `Expert Python Programming `_ + `Expert Python Programming `_ A Guide to Python's Magic Methods @@ -278,7 +280,7 @@ A Primer on Scientific Programming with Python, written by Hans Petter Langtangen, mainly covers Python's usage in the scientific field. In the book, examples are chosen from mathematics and the natural sciences. - `A Primer on Scientific Programming with Python `_ + `A Primer on Scientific Programming with Python `_ Numerical Methods in Engineering with Python ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -286,7 +288,7 @@ Numerical Methods in Engineering with Python Numerical Methods in Engineering with Python, written by Jaan Kiusalaas, puts the emphasis on numerical methods and how to implement them in Python. - `Numerical Methods in Engineering with Python `_ + `Numerical Methods in Engineering with Python `_ ******************** @@ -405,6 +407,6 @@ some commonly used piece of code, followed by an explanation of why the idiom is important. It also contains two code samples for each idiom: the "Harmful" way to write it and the "Idiomatic" way. - `For Python 2.7.3+ `_ + `For Python 2.7.3+ `_ - `For Python 3.3+ `_ + `For Python 3.3+ `_ diff --git a/docs/intro/news.rst b/docs/intro/news.rst index 9f8e923..d1cda93 100644 --- a/docs/intro/news.rst +++ b/docs/intro/news.rst @@ -32,7 +32,7 @@ Planet Python This is an aggregate of Python news from a growing number of developers. - `Planet Python `_ + `Planet Python `_ ********* @@ -42,7 +42,7 @@ This is an aggregate of Python news from a growing number of developers. /r/python is the Reddit Python community where users contribute and vote on Python-related news. - `/r/python `_ + `/r/python `_ ******************* @@ -70,7 +70,7 @@ Python Weekly Python Weekly is a free weekly newsletter featuring curated news, articles, new releases, jobs, etc. related to Python. - `Python Weekly `_ + `Python Weekly `_ *********** @@ -80,7 +80,7 @@ Python News Python News is the news section in the official Python web site (www.python.org). It briefly highlights the news from the Python community. - `Python News `_ + `Python News `_ ******************** diff --git a/docs/notes/contribute.rst b/docs/notes/contribute.rst index d82fb76..b6c72bb 100644 --- a/docs/notes/contribute.rst +++ b/docs/notes/contribute.rst @@ -30,5 +30,5 @@ If you'd like to contribute, there's plenty to do. Here's a short todo_ list. .. include:: ../../TODO.rst -.. _GitHub: http://github.com/kennethreitz/python-guide/ +.. _GitHub: https://github.com/kennethreitz/python-guide/ .. _todo: https://github.com/kennethreitz/python-guide/blob/master/TODO.rst diff --git a/docs/scenarios/cli.rst b/docs/scenarios/cli.rst index f90010e..1bf810e 100644 --- a/docs/scenarios/cli.rst +++ b/docs/scenarios/cli.rst @@ -46,7 +46,7 @@ POSIX-style usage instructions. Plac **** -`Plac `_ is a simple wrapper +`Plac `_ is a simple wrapper over the Python standard library `argparse `_, which hides most of its complexity by using a declarative interface: the argument parser is inferred rather than written down imperatively. This diff --git a/docs/scenarios/client.rst b/docs/scenarios/client.rst index a10f1db..1457fa4 100644 --- a/docs/scenarios/client.rst +++ b/docs/scenarios/client.rst @@ -29,7 +29,7 @@ pooling are 100% automatic, powered by urllib3, which is embedded within Requests. - `Documentation `_ -- `PyPi `_ +- `PyPi `_ - `GitHub `_ diff --git a/docs/scenarios/db.rst b/docs/scenarios/db.rst index 58211e2..ecdb830 100644 --- a/docs/scenarios/db.rst +++ b/docs/scenarios/db.rst @@ -52,7 +52,7 @@ Also included is a command-line tool for exporting SQL data. Django ORM ********** -The Django ORM is the interface used by `Django `_ +The Django ORM is the interface used by `Django `_ to provide database access. It's based on the idea of diff --git a/docs/scenarios/network.rst b/docs/scenarios/network.rst index f8306c7..bb751b7 100644 --- a/docs/scenarios/network.rst +++ b/docs/scenarios/network.rst @@ -10,19 +10,19 @@ Networking Twisted ******* -`Twisted `_ is an event-driven networking +`Twisted `_ is an event-driven networking engine. It can be used to build applications around many different networking protocols, including HTTP servers and clients, applications using SMTP, POP3, IMAP, or SSH protocols, instant messaging, -and `much more `_. +and `much more `_. ***** PyZMQ ***** -`PyZMQ `_ is the Python binding for -`ZeroMQ `_, which is a high-performance asynchronous +`PyZMQ `_ is the Python binding for +`ZeroMQ `_, which is a high-performance asynchronous messaging library. One great advantage of ZeroMQ is that it can be used for message queuing without a message broker. The basic patterns for this are: diff --git a/docs/scenarios/scientific.rst b/docs/scenarios/scientific.rst index cca2342..bb05473 100644 --- a/docs/scenarios/scientific.rst +++ b/docs/scenarios/scientific.rst @@ -160,7 +160,7 @@ add-ons are available for academics and researchers. Canopy ------ -`Canopy `_ is another scientific +`Canopy `_ is another scientific Python distribution, produced by `Enthought `_. A limited 'Canopy Express' variant is available for free, but Enthought charges for the full distribution. Free licenses are available for academics. diff --git a/docs/scenarios/speed.rst b/docs/scenarios/speed.rst index 4858723..1ac16b0 100644 --- a/docs/scenarios/speed.rst +++ b/docs/scenarios/speed.rst @@ -76,7 +76,7 @@ C Extensions Cython ------ -`Cython `_ implements a superset of the Python language +`Cython `_ implements a superset of the Python language with which you are able to write C and C++ modules for Python. Cython also allows you to call functions from compiled C libraries. Using Cython allows you to take advantage of Python's strong typing of variables and operations. @@ -448,14 +448,14 @@ Multiprocessing .. _`PyPy`: http://pypy.org -.. _`The GIL`: http://wiki.python.org/moin/GlobalInterpreterLock +.. _`The GIL`: https://wiki.python.org/moin/GlobalInterpreterLock .. _`guide`: http://www.dabeaz.com/python/UnderstandingGIL.pdf .. _`New GIL`: http://www.dabeaz.com/python/NewGIL.pdf -.. _`Special care`: http://docs.python.org/c-api/init.html#threads +.. _`Special care`: https://docs.python.org/c-api/init.html#threads .. _`David Beazley's`: http://www.dabeaz.com/GIL/gilvis/measure2.py .. _`concurrent.futures`: https://docs.python.org/3/library/concurrent.futures.html .. _`Future`: https://docs.python.org/3/library/concurrent.futures.html#concurrent.futures.Future .. _`threading`: https://docs.python.org/3/library/threading.html -.. _`stackoverflow post`: http://stackoverflow.com/questions/26688424/python-threads-are-printing-at-the-same-time-messing-up-the-text-output +.. _`stackoverflow post`: https://stackoverflow.com/questions/26688424/python-threads-are-printing-at-the-same-time-messing-up-the-text-output .. _`data race`: https://en.wikipedia.org/wiki/Race_condition .. _`Lock`: https://docs.python.org/3/library/threading.html#lock-objects diff --git a/docs/scenarios/xml.rst b/docs/scenarios/xml.rst index 91cafc5..3bdf15b 100644 --- a/docs/scenarios/xml.rst +++ b/docs/scenarios/xml.rst @@ -43,7 +43,7 @@ untangle also supports loading XML from a string or a URL. xmltodict ********* -`xmltodict `_ is another simple +`xmltodict `_ is another simple library that aims at making XML feel like working with JSON. An XML file like this: diff --git a/docs/shipping/freezing.rst b/docs/shipping/freezing.rst index 99dcba2..1b614f3 100644 --- a/docs/shipping/freezing.rst +++ b/docs/shipping/freezing.rst @@ -61,7 +61,7 @@ py2app no no yes yes MIT no yes yes .. note:: Freezing Python code on Linux into a Windows executable was only once supported in PyInstaller `and later dropped - `_. + `_. .. note:: All solutions need a Microsoft Visual C++ to be installed on the target machine, except py2app. @@ -139,7 +139,7 @@ Prerequisite is to install :ref:`Python on Windows `. The last 3. (Optionally) `include icon `_ -4. (Optionally) `one-file mode `_ +4. (Optionally) `one-file mode `_ 5. Generate :file:`.exe` into :file:`dist` directory: diff --git a/docs/shipping/packaging.rst b/docs/shipping/packaging.rst index 0f0ff04..9a8be8c 100644 --- a/docs/shipping/packaging.rst +++ b/docs/shipping/packaging.rst @@ -48,7 +48,7 @@ On Linux, you may also want to consider For Python Developers ********************* -If you're writing an open source Python module, `PyPI `_ +If you're writing an open source Python module, `PyPI `_ , more properly known as *The Cheeseshop*, is the place to host it. @@ -56,8 +56,8 @@ If you're writing an open source Python module, `PyPI `_ Pip vs. easy_install -------------------- -Use `pip `_. More details -`here `_. +Use `pip `_. More details +`here `_. Personal PyPI @@ -105,7 +105,7 @@ I got fooled by that, one time. But if you feel that creating a folder called pypiserver ++++++++++ -`pypiserver `_ is a minimal PyPI +`pypiserver `_ is a minimal PyPI compatible server. It can be used to serve a set of packages to easy_install or pip. It includes helpful features like an administrative command (``-U``) which will update all its packages to their latest versions diff --git a/docs/starting/install/linux.rst b/docs/starting/install/linux.rst index f0dc639..4198be8 100644 --- a/docs/starting/install/linux.rst +++ b/docs/starting/install/linux.rst @@ -38,7 +38,7 @@ it makes it much easier for you to use other third-party Python libraries. Setuptools & Pip **************** -The two most crucial third-party Python packages are `setuptools `_ and `pip `_. +The two most crucial third-party Python packages are `setuptools `_ and `pip `_. Once installed, you can download, install and uninstall any compliant Python software product with a single command. It also enables you to add this network installation @@ -75,6 +75,5 @@ manage your virtual environments. -------------------------------- -This page is a remixed version of `another guide `_, +This page is a remixed version of `another guide `_, which is available under the same license. - diff --git a/docs/starting/install/osx.rst b/docs/starting/install/osx.rst index 48e5bdf..d0aa601 100644 --- a/docs/starting/install/osx.rst +++ b/docs/starting/install/osx.rst @@ -33,7 +33,7 @@ Let's install a real version of Python. Before installing Python, you'll need to install a C compiler. The fastest way is to install the Xcode Command Line Tools by running ``xcode-select --install``. You can also download the full version of -`Xcode `_ from the Mac App Store, or the +`Xcode `_ from the Mac App Store, or the minimal but unofficial `OSX-GCC-Installer `_ package. @@ -50,9 +50,9 @@ package. While OS X comes with a large number of Unix utilities, those familiar with Linux systems will notice one key component missing: a decent package manager. -`Homebrew `_ fills this void. +`Homebrew `_ fills this void. -To `install Homebrew `_, open :file:`Terminal` or +To `install Homebrew `_, open :file:`Terminal` or your favorite OS X terminal emulator and run .. code-block:: console @@ -129,5 +129,5 @@ To start using this and see more information: :ref:`Virtual Environments `_, +This page is a remixed version of `another guide `_, which is available under the same license. diff --git a/docs/starting/install/win.rst b/docs/starting/install/win.rst index e22837c..ac304ae 100644 --- a/docs/starting/install/win.rst +++ b/docs/starting/install/win.rst @@ -13,7 +13,7 @@ Installing Python 2 on Windows First, download the `latest version `_ of Python 2.7 from the official website. If you want to be sure you are installing a fully up-to-date version, click the Downloads > Windows link from the home page of the -`Python.org web site `_ . +`Python.org web site `_ . The Windows version is provided as an MSI package. To install it manually, just double-click the file. The MSI package format allows Windows administrators to @@ -57,7 +57,7 @@ makes it much easier for you to use other third-party Python libraries. Setuptools + Pip **************** -The two most crucial third-party Python packages are `setuptools `_ and `pip `_. +The two most crucial third-party Python packages are `setuptools `_ and `pip `_. Once installed, you can download, install and uninstall any compliant Python software product with a single command. It also enables you to add this network installation @@ -92,5 +92,5 @@ To start using this and see more information: :ref:`Virtual Environments `_, +This page is a remixed version of `another guide `_, which is available under the same license. diff --git a/docs/starting/install3/linux.rst b/docs/starting/install3/linux.rst index 36b439e..47765c4 100644 --- a/docs/starting/install3/linux.rst +++ b/docs/starting/install3/linux.rst @@ -67,7 +67,7 @@ This will launch the Python 3 interpreter. Setuptools & Pip **************** -The two most crucial third-party Python packages are `setuptools `_ and `pip `_. +The two most crucial third-party Python packages are `setuptools `_ and `pip `_. Once installed, you can download, install and uninstall any compliant Python software product with a single command. It also enables you to add this network installation @@ -113,6 +113,5 @@ So, onward! To the :ref:`Pipenv & Virtual Environments -------------------------------- -This page is a remixed version of `another guide `_, +This page is a remixed version of `another guide `_, which is available under the same license. - diff --git a/docs/starting/install3/osx.rst b/docs/starting/install3/osx.rst index 9ffe202..654cca1 100644 --- a/docs/starting/install3/osx.rst +++ b/docs/starting/install3/osx.rst @@ -27,7 +27,7 @@ Doing it Right Let's install a real version of Python. Before installing Python, you'll need to install GCC. GCC can be obtained -by downloading `Xcode `_, the smaller +by downloading `Xcode `_, the smaller `Command Line Tools `_ (must have an Apple account) or the even smaller `OSX-GCC-Installer `_ package. @@ -43,9 +43,9 @@ package. While OS X comes with a large number of Unix utilities, those familiar with Linux systems will notice one key component missing: a package manager. -`Homebrew `_ fills this void. +`Homebrew `_ fills this void. -To `install Homebrew `_, open :file:`Terminal` or +To `install Homebrew `_, open :file:`Terminal` or your favorite OS X terminal emulator and run .. code-block:: console @@ -139,5 +139,5 @@ So, onward! To the :ref:`Pipenv & Virtual Environments -------------------------------- -This page is a remixed version of `another guide `_, +This page is a remixed version of `another guide `_, which is available under the same license. diff --git a/docs/starting/install3/win.rst b/docs/starting/install3/win.rst index 588d1cc..2e259ac 100644 --- a/docs/starting/install3/win.rst +++ b/docs/starting/install3/win.rst @@ -24,7 +24,7 @@ Once you've run this command, you should be able to launch Python directly from Setuptools + Pip **************** -The two most crucial third-party Python packages are `setuptools `_ and `pip `_, +The two most crucial third-party Python packages are `setuptools `_ and `pip `_, which let you download, install and uninstall any compliant Python software product with a single command. It also enables you to add this network installation capability to your own Python software with very little work. @@ -52,5 +52,5 @@ So, onward! To the :ref:`Pipenv & Virtual Environments -------------------------------- -This page is a remixed version of `another guide `_, +This page is a remixed version of `another guide `_, which is available under the same license. diff --git a/docs/writing/logging.rst b/docs/writing/logging.rst index 5ea058e..d218388 100644 --- a/docs/writing/logging.rst +++ b/docs/writing/logging.rst @@ -70,9 +70,9 @@ this in your ``__init__.py``: Logging in an Application ************************* -The `twelve factor app `_, an authoritative reference +The `twelve factor app `_, an authoritative reference for good practice in application development, contains a section on -`logging best practice `_. It emphatically +`logging best practice `_. It emphatically advocates for treating log events as an event stream, and for sending that event stream to standard output to be handled by the application environment. @@ -192,9 +192,9 @@ Example Configuration Directly in Code logger.debug('often makes a very good meal of %s', 'visiting tourists') -.. _basic logging tutorial: http://docs.python.org/howto/logging.html#logging-basic-tutorial -.. _logging configuration: https://docs.python.org/howto/logging.html#configuring-logging -.. _logging tutorial: http://docs.python.org/howto/logging.html -.. _configuring logging for a library: https://docs.python.org/howto/logging.html#configuring-logging-for-a-library -.. _log record: https://docs.python.org/library/logging.html#logrecord-attributes +.. _basic logging tutorial: http://docs.python.org/3/howto/logging.html#logging-basic-tutorial +.. _logging configuration: https://docs.python.org/3/howto/logging.html#configuring-logging +.. _logging tutorial: http://docs.python.org/3/howto/logging.html +.. _configuring logging for a library: https://docs.python.org/3/howto/logging.html#configuring-logging-for-a-library +.. _log record: https://docs.python.org/3/library/logging.html#logrecord-attributes .. _requests source: https://github.com/kennethreitz/requests diff --git a/docs/writing/style.rst b/docs/writing/style.rst index 8f15a1b..56f1086 100644 --- a/docs/writing/style.rst +++ b/docs/writing/style.rst @@ -271,7 +271,7 @@ Idioms A programming idiom, put simply, is a *way* to write code. The notion of programming idioms is discussed amply at `c2 `_ -and at `Stack Overflow `_. +and at `Stack Overflow `_. Idiomatic Python code is often referred to as being *Pythonic*. @@ -403,7 +403,7 @@ hand, the hash of the item will tell Python where in the set to look for a matching item. As a result, the search can be done quickly, even if the set is large. Searching in dictionaries works the same way. For more information see this -`StackOverflow `_ +`StackOverflow `_ page. For detailed information on the amount of time various common operations take on each of these data structures, see `this page `_. @@ -496,7 +496,7 @@ Then run it on a file or series of files to get a report of any violations. optparse.py:472:29: E221 multiple spaces before operator optparse.py:544:21: W601 .has_key() is deprecated, use 'in' -The program `autopep8 `_ can be used to +The program `autopep8 `_ can be used to automatically reformat code in the PEP 8 style. Install the program with: .. code-block:: console diff --git a/docs/writing/tests.rst b/docs/writing/tests.rst index 141c929..0cf20f7 100644 --- a/docs/writing/tests.rst +++ b/docs/writing/tests.rst @@ -274,7 +274,7 @@ This way if you ever switch to a newer Python version and no longer need the unittest2 module, you can simply change the import in your test module without the need to change any other code. - `unittest2 `_ + `unittest2 `_ mock From d200bf04f8d7b4f192625e63cb233793a9152940 Mon Sep 17 00:00:00 2001 From: Andrew Janke Date: Tue, 18 Dec 2018 00:48:19 -0500 Subject: [PATCH 13/14] Format Windows console examples with doscon or powershell --- docs/notes/styleguide.rst | 5 ++++- docs/starting/install/win.rst | 8 ++++---- docs/starting/install3/win.rst | 6 ++++-- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/docs/notes/styleguide.rst b/docs/notes/styleguide.rst index d38fc22..fdd7c18 100644 --- a/docs/notes/styleguide.rst +++ b/docs/notes/styleguide.rst @@ -109,7 +109,10 @@ Command line examples: $ run command --help $ ls .. -Be sure to include the ``$`` prefix before each line. +Be sure to include the ``$`` prefix before each line for Unix console examples. + +For Windows console examples, use ``doscon`` or ``powershell`` instead of +``console``, and omit the ``$`` prefix. Python interpreter examples: diff --git a/docs/starting/install/win.rst b/docs/starting/install/win.rst index e22837c..7b98ddb 100644 --- a/docs/starting/install/win.rst +++ b/docs/starting/install/win.rst @@ -32,13 +32,13 @@ tedious, so add the directories for your default Python version to the :envvar:` Assuming that your Python installation is in :file:`C:\\Python27\\`, add this to your :envvar:`PATH`: -.. code-block:: console +.. code-block:: doscon C:\Python27\;C:\Python27\Scripts\ You can do this easily by running the following in ``powershell``: -.. code-block:: console +.. code-block:: powershell [Environment]::SetEnvironmentVariable("Path", "$env:Path;C:\Python27\;C:\Python27\Scripts\", "User") @@ -68,9 +68,9 @@ pip by default. To see if pip is installed, open a command prompt and run -.. code-block:: console +.. code-block:: doscon - $ command -v pip + command -v pip To install pip, `follow the official pip installation guide `_ - this will automatically install the latest version of setuptools. diff --git a/docs/starting/install3/win.rst b/docs/starting/install3/win.rst index 588d1cc..51ec7ab 100644 --- a/docs/starting/install3/win.rst +++ b/docs/starting/install3/win.rst @@ -12,7 +12,7 @@ It's a community system packager manager for Windows 7+. (It's very much like Ho Once done, installing Python 3 is very simple, because Chocolatey pushes Python 3 as the default. -.. code-block:: console +.. code-block:: doscon choco install python @@ -29,7 +29,9 @@ which let you download, install and uninstall any compliant Python software product with a single command. It also enables you to add this network installation capability to your own Python software with very little work. -All supported versions of Python 3 include pip, so just make sure it's up to date:: +All supported versions of Python 3 include pip, so just make sure it's up to date: + +.. code-block:: doscon python -m pip install -U pip From 972b2df51c055559f290425ab7f395a58cdc29b5 Mon Sep 17 00:00:00 2001 From: Gourav Chawla Date: Mon, 18 Feb 2019 18:41:35 +0530 Subject: [PATCH 14/14] Update copyright to be dynamic - Updated the copyright to be dynamic. - Made changes in import to adhere to PEP8 --- docs/conf.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/docs/conf.py b/docs/conf.py index 64e78e4..6277fe4 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -11,7 +11,9 @@ # All configuration values have a default; values that are commented out # serve to show the default. -import sys, os +import datetime +import os +import sys # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the @@ -45,8 +47,11 @@ source_suffix = '.rst' master_doc = 'index' # General information about the project. +current_year = datetime.datetime.now().year project = u'pythonguide' -copyright = u'2011–2018 Kenneth Reitz & Real Python. CC BY-NC-SA 3.0' +copyright = (u'2011-{} Kenneth Reitz' + ' & Real Python.' + ' CC BY-NC-SA 3.0').format(current_year) # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the @@ -241,7 +246,7 @@ man_pages = [ epub_title = u'pythonguide' epub_author = u'Kenneth Reitz' epub_publisher = u'Kenneth Reitz' -epub_copyright = u'2011–2018, Kenneth Reitz & Real Python' +epub_copyright = u'2011–{}, Kenneth Reitz & Real Python'.format(current_year) # The language of the text. It defaults to the language option # or en if the language is not set.