Skip to content

Commit a78b5da

Browse files
authored
Merge pull request #3216 from python-trio/update-readme-stability
Update stability info in documentation
2 parents 4df83b4 + 5ac6aeb commit a78b5da

File tree

8 files changed

+39
-38
lines changed

8 files changed

+39
-38
lines changed

README.rst

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -56,13 +56,13 @@ I/O-oriented programs easier, less error-prone, and just plain more
5656
fun. `Perhaps you'll find the same
5757
<https://github.com/python-trio/trio/wiki/Testimonials>`__.
5858

59-
This project is young and still somewhat experimental: the overall
60-
design is solid, and the existing features are fully tested and
61-
documented, but you may encounter missing functionality or rough
62-
edges. We *do* encourage you to use it, but you should `read and
63-
subscribe to issue #1
64-
<https://github.com/python-trio/trio/issues/1>`__ to get a warning and a
65-
chance to give feedback about any compatibility-breaking changes.
59+
Trio is a mature and well-tested project: the overall design is solid,
60+
and the existing features are fully documented and widely used in
61+
production. While we occasionally make minor interface adjustments,
62+
breaking changes are rare. We encourage you to use Trio with confidence,
63+
but if you rely on long-term API stability, consider `subscribing to
64+
issue #1 <https://github.com/python-trio/trio/issues/1>`__ for advance
65+
notice of any compatibility updates.
6666

6767

6868
Where to next?

docs/source/code-of-conduct.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -138,9 +138,9 @@ members. This section covers actual concrete steps.
138138
Contacting Maintainers
139139
~~~~~~~~~~~~~~~~~~~~~~
140140

141-
As a small and young project, we don't yet have a Code of Conduct
142-
enforcement team. Hopefully that will be addressed as we grow, but for
143-
now, any issues should be addressed to `Nathaniel J. Smith
141+
As a small project, we don't have a Code of Conduct enforcement team.
142+
Hopefully that will be addressed as we grow, but for now, any issues
143+
should be addressed to `Nathaniel J. Smith
144144
<https://github.com/njsmith>`__, via `email <mailto:[email protected]>`__
145145
or any other medium that you feel comfortable with. Using words like
146146
"Trio code of conduct" in your subject will help make sure your

docs/source/history.rst

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1504,14 +1504,14 @@ Highlights
15041504
Breaking changes and deprecations
15051505
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
15061506

1507-
Trio is a young and ambitious project, but it also aims to become a
1508-
stable, production-quality foundation for async I/O in Python.
1509-
Therefore, our approach for now is to provide deprecation warnings
1510-
where-ever possible, but on a fairly aggressive cycle as we push
1511-
towards stability. If you use Trio you should `read and subscribe to
1512-
issue #1 <https://github.com/python-trio/trio/issues/1>`__. We'd also
1513-
welcome feedback on how this approach is working, whether our
1514-
deprecation warnings could be more helpful, or anything else.
1507+
Trio has matured into a stable, production-quality foundation for
1508+
async I/O in Python. While we strive to maintain stability, we may
1509+
make occasional breaking changes to improve the library. Whenever
1510+
possible, we provide deprecation warnings on a reasonable timeline to
1511+
ease transitions. If you use Trio, we recommend `subscribing to issue
1512+
#1 <https://github.com/python-trio/trio/issues/1>`__ to stay informed
1513+
about changes. We also welcome feedback on how our deprecation process
1514+
is working and whether it could be improved.
15151515

15161516
The tl;dr is: stop using ``socket.bind`` if you can, and then fix
15171517
everything your test suite warns you about.

docs/source/index.rst

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -33,13 +33,13 @@ the Python I/O library I always wanted; I find it makes building
3333
I/O-oriented programs easier, less error-prone, and just plain more
3434
fun. Perhaps you'll find the same.
3535

36-
This project is young and still somewhat experimental: the overall
37-
design is solid and the existing features are fully tested and
38-
documented, but you may encounter missing functionality or rough
39-
edges. We *do* encourage you do use it, but you should `read and
40-
subscribe to issue #1
41-
<https://github.com/python-trio/trio/issues/1>`__ to get warning and a
42-
chance to give feedback about any compatibility-breaking changes.
36+
Trio is a mature and well-tested library, though it retains its
37+
“experimental” classification to allow for occasional breaking API
38+
changes as we push toward a 1.0 release. In practice, such changes are
39+
rare and typically minor. It is widely used in production environments,
40+
and we *do* encourage you do use it, but consider `subscribing to issue
41+
#1 <https://github.com/python-trio/trio/issues/1>`__ to get a warning
42+
and a chance to give feedback about any compatibility-breaking changes.
4343

4444
Vital statistics:
4545

docs/source/reference-core.rst

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -817,10 +817,10 @@ inside the handler function(s) with the ``nonlocal`` keyword:
817817
Designing for multiple errors
818818
+++++++++++++++++++++++++++++
819819

820-
Structured concurrency is still a young design pattern, but there are a few patterns
821-
we've identified for how you (or your users) might want to handle groups of exceptions.
822-
Note that the final pattern, simply raising an `ExceptionGroup`, is the most common -
823-
and nurseries automatically do that for you.
820+
Structured concurrency is still a relatively new design pattern, but there are a few
821+
approaches we've identified for how you (or your users) might want to handle groups of
822+
exceptions. Note that the final pattern, simply raising an `ExceptionGroup`, is the most
823+
common - and nurseries automatically do that for you.
824824

825825
**First**, you might want to 'defer to' a particular exception type, raising just that if
826826
there is any such instance in the group. For example: `KeyboardInterrupt` has a clear

newsfragments/3216.doc.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Update wording in documentation to more accurately reflect Trio's maturity.

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ keywords = [
1414
"trio",
1515
]
1616
classifiers = [
17-
"Development Status :: 3 - Alpha",
17+
"Development Status :: 4 - Beta",
1818
"Framework :: Trio",
1919
"Intended Audience :: Developers",
2020
"License :: OSI Approved :: MIT License",

src/trio/_deprecate.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -26,18 +26,18 @@
2626
class TrioDeprecationWarning(FutureWarning):
2727
"""Warning emitted if you use deprecated Trio functionality.
2828
29-
As a young project, Trio is currently quite aggressive about deprecating
30-
and/or removing functionality that we realize was a bad idea. If you use
31-
Trio, you should subscribe to `issue #1
29+
While a relatively mature project, Trio remains committed to refining its
30+
design and improving usability. As part of this, we occasionally deprecate
31+
or remove functionality that proves suboptimal. If you use Trio, we
32+
recommend `subscribing to issue #1
3233
<https://github.com/python-trio/trio/issues/1>`__ to get information about
3334
upcoming deprecations and other backwards compatibility breaking changes.
3435
3536
Despite the name, this class currently inherits from
36-
:class:`FutureWarning`, not :class:`DeprecationWarning`, because while
37-
we're in young-and-aggressive mode we want these warnings to be visible by
38-
default. You can hide them by installing a filter or with the ``-W``
39-
switch: see the :mod:`warnings` documentation for details.
40-
37+
:class:`FutureWarning`, not :class:`DeprecationWarning`, because until a
38+
1.0 release, we want these warnings to be visible by default. You can hide
39+
them by installing a filter or with the ``-W`` switch: see the
40+
:mod:`warnings` documentation for details.
4141
"""
4242

4343

0 commit comments

Comments
 (0)