I am please to announce the availability of the "baseline" package.
This tool streamlines creation and maintenance of tests which compare string
output against a baseline. It offers a mechanism to compare a string against
a baselined copy and update the baselined copy to match the new value when a
mismatch occurs. The update process includes a manual step to facilitate a
review of the change before acceptance. The tool uses multi-line string
format
for string baselines to improve readability for human review.
Docs: https://baseline.readthedocs.io/en/latest/
PyPi: https://pypi.org/project/baseline/
Repo: https://github.com/dmgass/baseline
License: MIT
With Regards,
Dan Gass
(dan.gass at gmail)
***********
Quick Start
***********
Create an empty baseline with a triple quoted multi-line string. Place
the ending triple quote on a separate line and indent it to the level
you wish the string baseline update to be indented to. Add a compare of
the string being tested to the baseline string. Then save the file as
``fox.py``:
.. code-block:: python
from baseline import Baseline
expected = Baseline("""
""")
test_string = "THE QUICK BROWN FOX\n JUMPS\nOVER THE LAZY DOG."
assert test_string == expected
Run ``fox.py`` and observe that the ``assert`` raises an exception since
the strings are not equal. Because the comparison failed, the tool located
the triple quoted baseline string in the source file and updated it with the
miscompared value. When the interpretter exited, the tool saved the updated
source file but changed the file name to ``fox.update.py``:
.. code-block:: python
from baseline import Baseline
expected = Baseline("""
THE QUICK BROWN FOX
JUMPS
OVER THE LAZY DOG.
""")
test_string = "THE QUICK BROWN FOX\n JUMPS\nOVER THE LAZY DOG."
assert test_string == expected
After reviewing the change with your favorite file differencing tool,
accept the change by either manually overwriting the original file or use
the ``baseline`` command line tool to scan the directory for updated
scripts and accept them:
.. code-block:: shell
$ python -m baseline *
Found updates for:
fox.py
Hit [ENTER] to update, [Ctrl-C] to cancel
fox.update.py -> fox.py
Run ``fox.py`` again and observe the ``assert`` does not raise an exception
nor is a source file update generated. If in the future the test value
changes, the ``assert`` will raise an exception and cause a new source file
update to be generated. Simply repeat the review and acceptance step and you
are back in business!
<P><A HREF="https://baseline.readthedocs.io/en/latest/">
baseline 0.2.1</A> - Easy String Baseline (07-Jun-18)
This course will help you to expertise the usage of Python in Data Science world.
Carter your Python Knowledge so that it can be utilized to get the Insights of Data using Methodologies and Techniques of Data Science...
Objective:
Understand the concepts of Data science and Python
You will be able to use Python in Discovering Data.
You will have an idea of Statistical and Analytical methods to deal with huge data sets.
You will gain an expertise on Regular Expressions, looping functions and concepts of Object Oriented Programming.
You will be able to create business algorithms and data models using Python and it's techniques.
Work on Real-life Projects will help you to get a practical experience of real scenarios of IT Industry.
Start learning Python for Data Science from basics to advance levels here...
https://goo.gl/070wXw
Datatest provides tools for test driven data-wrangling and
data validation. It supports both pytest and unittest style
testing.
I've been working to get datatest ready for a few pre-PyCon
updates. This latest release takes many of the "how-to"
solutions and brings them into the core package.
* Docs - https://datatest.readthedocs.io/
* PyPI - https://pypi.org/project/datatest/
* Devel - https://github.com/shawnbrown/datatest
Upgrade an existing installation to 0.9.4:
pip install --upgrade datatest
What's New in Datatest 0.9.4:
* Added Python 3.8 testing and support.
* Added new validate methods (moved from how-to recipes into
core module):
* Added approx() method to require for approximate numeric
equality.
* Added fuzzy() method to require strings by approximate match.
* Added interval() method to require elements within a given
interval.
* Added set(), subset(), and superset() methods for explicit
membership checking.
* Added unique() method to require unique elements.
* Added order() method to require elements by relative order.
* Changed default sequence validation to check elements by
index position rather than checking by relative order.
* Added fuzzy-matching allowance to allow strings by approximate
match.
* Added Predicate class to formalize behavior--also provides
inverse-matching with the inversion operator (~).
* Added new methods to Query class:
* Added unwrap() to remove single-element containers and return
their unwrapped contents.
* Added starmap() to unpack grouped arguments when applying a
function to elements.
* Fixed improper use of assert statements with appropriate
conditional checks and error behavior.
* Added requirement class hierarchy (using BaseRequirement). This
gives users a cleaner way to implement custom validation behavior
and makes the underlying codebase easier to maintain.
* Changed name of ProxyGroup to RepeatingContainer.
* Changed "How To" examples to use the new validation methods.
Hi,
Wing 7.0.3 has been released. This is a minor release that includes the
following fixes and improvements:
* Fix analysis when using Python 3 on a remote host
* Fix several cases where valid imports could not be resolved
* Improve default display scaling on Linux
* Correctly omit types and methods from debug data display
* Fix comparing remote files and buffer to remote disk
* Fix searching documentation in Search in Files
* Fix a number of other minor issues
You can obtain this release with Check for Updates in Wing 7's Help menu
or download it now <https://wingware.com/downloads>.
New in Wing 7
Wing 7 introduces an improved code warnings and code quality inspection
system that includes built-in error detection and tight integration with
Pylint, pep8, and mypy. This release also adds a new data frame and
array viewer, a MATLAB keyboard personality, easy inline debug data
display with Shift-Space, improved stack data display, support for PEP
3134 chained exceptions, callouts for search and other code navigation
features, four new color palettes, improved bookmarking, a high-level
configuration menu, magnified presentation mode, a new update manager,
stepping over import internals, simplified remote agent installation,
and much more.
For details see What's New in Wing 7 <https://wingware.com/wingide/whatsnew>
Wing 7 Screen Shot
Try Wing 7 Now!
Wing 7 is a an exciting new step for Wingware's Python IDE product line.
Find out how Wing 7 can turbocharge your Python development by trying it
today.
*Download Wing 7.0.3:* Wing Pro
<https://wingware.com/downloads/wing-pro/7.0/binaries> | Wing Personal
<https://wingware.com/downloads/wing-personal/7.0/binaries> | Wing 101
<https://wingware.com/downloads/wing-101/7.0/binaries> | Compare
Products <https://wingware.com/downloads>
Wing 7 installs side by side with earlier versions of Wing, so there is
no need to remove old versions in order to try it. Wing 7 will read and
convert your old preferences, settings, and projects. Projects should be
saved to a new name since earlier versions of Wing cannot read Wing 7
projects.
See Upgrading <https://wingware.com/doc/install/upgrading> for details
and Migrating from Older Versions
<https://wingware.com/doc/install/migrating> for a list of compatibility
notes.
PyCA cryptography 2.7 has been released to PyPI. cryptography includes both
high level recipes and low level interfaces to common cryptographic
algorithms such as symmetric ciphers, asymmetric algorithms, message
digests, X509, key derivation functions, and much more. We support Python
2.7, Python 3.4+, and PyPy.
Changelog (https://cryptography.io/en/latest/changelog/#v2-7):
* Updated Windows, macOS, and manylinux1 wheels to be compiled with OpenSSL
1.1.1c.
* BACKWARDS INCOMPATIBLE: We no longer distribute 32-bit manylinux1 wheels.
Continuing to produce them was a maintenance burden.
* BACKWARDS INCOMPATIBLE: Removed the
cryptography.hazmat.primitives.mac.MACContext interface. The CMAC and HMAC
APIs have not changed, but they are no longer registered as MACContext
instances.
* Removed support for running our tests with setup.py test. Users
interested in running our tests can continue to follow the directions in
our development documentation.
* Add support for Poly1305 when using OpenSSL 1.1.1 or newer.
* Support serialization with Encoding.OpenSSH and PublicFormat.OpenSSH in
Ed25519PublicKey.public_bytes .
* Correctly allow passing a SubjectKeyIdentifier to
from_issuer_subject_key_identifier() and deprecate passing an Extension
object. The documentation always required SubjectKeyIdentifier but the
implementation previously required an Extension.
-Paul Kehrer (reaperhulk)
Charles R Harris <charlesr.harris(a)gmail.com>
Apr 21, 2019, 8:39 PM
to numpy-discussion, SciPy, SciPy-User, bcc: python-announce-list
Hi All,
On behalf of the NumPy team I am pleased to announce the release of NumPy
1.16.4 which contains several fixes for newly reported bugs. The Python
versions supported in this release are 2.7 and 3.5-3.7.
Downstream developers building this release should use Cython >= 0.29.2
and, if using OpenBLAS, OpenBLAS > v0.3.7. Wheels for this release can be
downloaded from PyPI <https://pypi.org/project/numpy/1.16.4/>, source
archives and release notes are available from Github
<https://github.com/numpy/numpy/releases/tag/v1.16.4>.
If you are installing using pip, you may encounter a problem with older
installed versions of NumPy that pip did not delete becoming mixed with the
current version, resulting in an ``ImportError``. That problem is
particularly
common on Debian derived distributions due to a modified pip. The fix is
to make sure all previous NumPy versions installed by pip have been
removed. See #12736 <https://github.com/numpy/numpy/issues/12736> for
discussion of the issue.
*Contributors*
A total of 10 people contributed to this release. People with a "+" by
their
names contributed a patch for the first time.
- Charles Harris
- Eric Wieser
- Dennis Zollo +
- Hunter Damron +
- Jingbei Li +
- Kevin Sheppard
- Matti Picus
- Nicola Soranzo +
- Sebastian Berg
- Tyler Reddy
*Pull requests merged*
A total of 16 pull requests were merged for this release.
- gh-13392: BUG: Some PyPy versions lack PyStructSequence_InitType2.
- gh-13394: MAINT, DEP: Fix deprecated ``assertEquals()``
- gh-13396: BUG: Fix structured_to_unstructured on single-field types
(backport)
- gh-13549: BLD: Make CI pass again with pytest 4.5
- gh-13552: TST: Register markers in conftest.py.
- gh-13559: BUG: Removes ValueError for empty kwargs in arraymultiter_new
- gh-13560: BUG: Add TypeError to accepted exceptions in crackfortran.
- gh-13561: BUG: Handle subarrays in descr_to_dtype
- gh-13562: BUG: Protect generators from log(0.0)
- gh-13563: BUG: Always return views from structured_to_unstructured
when...
- gh-13564: BUG: Catch stderr when checking compiler version
- gh-13565: BUG: longdouble(int) does not work
- gh-13587: BUG: distutils/system_info.py fix missing subprocess import
(#13523)
- gh-13620: BUG,DEP: Fix writeable flag setting for arrays without base
- gh-13641: MAINT: Prepare for the 1.16.4 release.
- gh-13644: BUG: special case object arrays when printing rel-, abs-error
Cheers,
Charles Harris
On behalf of the Bokeh team I am pleased to announce the release of version 1.2 of Bokeh!
Please read all about it in the announcement post at:
https://blog.bokeh.org/posts/release-1-2-0
If you are using Anaconda/miniconda, you can install it with conda:
conda install -c bokeh bokeh
Alternatively, you can also install it with pip:
pip install bokeh
Full information including details about how to use and obtain BokehJS are at:
https://bokeh.pydata.org/en/latest/docs/installation.html
Full documentation is available at: https://bokeh.pydata.org
Community support is available at: https://discourse.bokeh.org/
Contributions can be made on Github: https://github.com/bokeh/bokeh
There are now 360 total contributors to Bokeh and their time and effort help make Bokeh such an amazing project and community. Thank you again for your contributions. If you are interested in contributing, please come by the Bokeh dev chat room: https://gitter.im/bokeh/bokeh-dev
Thanks,
Bryan Van de Ven
Since our website was updated this year, we would like to remind you
how you can configure your tickets and profiles, so that we get the
right information for printing badges and adjusting catering counts.
We also had a few issues with the ticket configuration and assignments
last week. As a result, some of the ticket name changes you may have
made were lost. Please do consider assigning tickets to other rather
than just changing the name on the ticket, since that way, we receive
information about the new ticket owner’s preferences as well.
Please see our blog post for full details
-----------------------------------------
https://blog.europython.eu/post/185197692557/europython-2019-please-configu…
It covers these topics:
- Assigning tickets to other people
- Configuring your ticket
- Printing your invoice
- Configuring your EuroPython account
- profile
- privacy settings
Dates and Venues
----------------
EuroPython will be held from July 8-14 2019 in Basel, Switzerland, at
the Congress Center Basel (CCB) for the main conference days (Wed-Fri)
and the FHNW Muttenz for the workshops/trainings/sprints days
(Mon-Tue, Sat-Sun).
Tickets can be purchased on our registration page:
https://ep2019.europython.eu/registration/buy-tickets/
For more details, please have a look at our website and the FAQ:
https://ep2019.europython.eu/faq
Help spread the word
--------------------
Please help us spread this message by sharing it on your social
networks as widely as possible. Thank you !
Link to the blog post:
https://blog.europython.eu/post/185197692557/europython-2019-please-configu…
Tweet:
https://twitter.com/europython/status/1133318559776608256
Enjoy,
--
EuroPython 2019 Team
https://ep2019.europython.eu/https://www.europython-society.org/
Would you like to know about how to build websites, how the internet
works and would you like to try programming your own first blog, but
don’t know where to start? We have good news for you: we are holding a
one-day Django Girls workshop for beginners !
* https://ep2019.europython.eu/events/django-girls/ *
Where and when
--------------
The workshop will be held on Monday, July 8th in the EuroPython 2019
conference venue FHNW Campus Muttenz from 09:30 – 17:00.
What to expect
--------------
During the workshop you will work through a tutorial in a small group
of three attendees and one coach. Our coaches are software developers
who contribute their time, knowledge and energy for you and Django
Girls. All you need is a working laptop, and we’ll help you with the
rest.
You can attend the workshop for free! Your motivation counts, let us
know about it in your application.
Registering for the workshop
----------------------------
The workshop is aimed at women with little or no programming
experience, but may also be useful if you’ve learned a different
discipline (like data science) and would like to learn how to build
websites with Django.
The workshop is free to attend, but you have to apply and be
accepted. We only have 30 seats available for the workshop, and we’ll
pick the best applicants based on the information you provide you
provide on the form.
If you’d like to attend: apply here:
https://djangogirls.org/basel/
Workshop coaches
----------------
We can’t run this workshop without coaches! A coach will be assigned
to each group of 3 attendees. Their job is to support and encourage
their team as they work through the Django Girls tutorial at their own
pace.
If you’d like to apply to be a coach, please sign up here:
https://djangogirls.org/basel/
Sponsors of EuroPython 2019 Django Girls Workshop
-------------------------------------------------
- The EuroPython Society is providing the room and catering in our
training venue, the FHNW Campus Muttenz.
- Nexmo will provide the Django Girls workshop box.
- EntwicklerHeld will provide t-shirts for our coaches.
More information is available on our Django Girls page:
https://ep2019.europython.eu/events/django-girls/
Dates and Venues
----------------
EuroPython will be held from July 8-14 2019 in Basel, Switzerland, at
the Congress Center Basel (BCC) for the main conference days (Wed-Fri)
and the FHNW Muttenz for the workshops/trainings/sprints days
(Mon-Tue, Sat-Sun).
Tickets can be purchased on our registration page:
https://ep2019.europython.eu/registration/buy-tickets/
For more details, please have a look at our website and the FAQ:
https://ep2019.europython.eu/faq
Help spread the word
--------------------
Please help us spread this message by sharing it on your social
networks as widely as possible. Thank you !
Link to the blog post:
https://blog.europython.eu/post/185195491022/europython-2019-django-girls-w…
Tweet:
https://twitter.com/europython/status/1133271891974615046
Enjoy,
--
EuroPython 2019 Team
https://ep2019.europython.eu/https://www.europython-society.org/