Skip to content

Commit fa8b56a

Browse files
committed
Test environment updates
1 parent 68e587c commit fa8b56a

File tree

4 files changed

+73
-71
lines changed

4 files changed

+73
-71
lines changed

.github/workflows/tests-and-linters.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ jobs:
99
runs-on: ubuntu-20.04
1010
strategy:
1111
matrix:
12-
python-version: [2.7, 3.5, 3.6, 3.7, pypy2.7, pypy3.9]
12+
python-version: [3.7, pypy2.7, pypy3.9]
1313
steps:
1414
- uses: actions/checkout@v3
1515
- uses: actions/setup-python@v4

docs/main/changelog.rst

Lines changed: 69 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,18 @@
11
Changelog
22
=========
33

4-
This document describes all the changes in *Dependency Injector* framework
4+
This document describes all the changes in *Dependency Injector* framework
55
that were made in every particular version.
66

7-
From version 0.7.6 *Dependency Injector* framework strictly
7+
From version 0.7.6 *Dependency Injector* framework strictly
88
follows `Semantic versioning`_
99

10+
Develop
11+
-------
12+
13+
- Drop support of Python 2.7, 3.5, and 3.6.
14+
- Regenerate C sources using Cython 0.29.36.
15+
1016
4.41.0
1117
------
1218
- Add support of Python 3.11.
@@ -110,7 +116,7 @@ follows `Semantic versioning`_
110116
- Fix a typo in ``Factory`` provider docs ``service.add_attributes(clent=client)``
111117
`#499 <https://github.com/ets-labs/python-dependency-injector/issues/499>`_.
112118
Thanks to `@rajanjha786 <https://github.com/rajanjha786>`_ for the contribution.
113-
- Fix a typo in ``boto3`` example
119+
- Fix a typo in ``boto3`` example
114120
`#511 <https://github.com/ets-labs/python-dependency-injector/issues/511>`_.
115121
Thanks to `@whysage <https://github.com/whysage>`_ for the contribution.
116122

@@ -1310,24 +1316,24 @@ Misc:
13101316
------
13111317
- Add ``DependenciesContainer`` provider.
13121318
- Add "use_cases" example miniapp.
1313-
- Update documentation requirements to use fixed version of
1319+
- Update documentation requirements to use fixed version of
13141320
``sphinxcontrib-disqus``.
13151321

13161322

13171323
3.9.1
13181324
-----
13191325
- Fix docs build problem (``sphinx`` is frozen on ``1.5.6`` version because of
1320-
incompatibility with ``sphinxcontrib-discus``).
1326+
incompatibility with ``sphinxcontrib-discus``).
13211327
- Add badge for docs.
13221328

13231329
3.9.0
13241330
-----
1325-
- Change initialization of declarative container, so it accepts overriding
1326-
providers as keyword arguments -
1331+
- Change initialization of declarative container, so it accepts overriding
1332+
providers as keyword arguments -
13271333
``DeclarativeContainer(**overriding_providers)``.
1328-
- Add method to dynamic catalog for setting groups of providers -
1334+
- Add method to dynamic catalog for setting groups of providers -
13291335
``DynamicContainer.set_providers(**providers)``.
1330-
- Add method to dynamic catalog for overriding groups of providers -
1336+
- Add method to dynamic catalog for overriding groups of providers -
13311337
``DynamicContainer.set_providers(**overriding_providers)``.
13321338
- Rename ``ExternalDependency`` provider to ``Dependency``.
13331339
- Add default value for ``instance_of`` argument of ``Dependency`` provider -
@@ -1359,7 +1365,7 @@ Misc:
13591365
3.7.0
13601366
-----
13611367
- Add ``FactoryAggregate`` provider.
1362-
- Add ``Provider.provider`` dynamic attribute that return new provider's
1368+
- Add ``Provider.provider`` dynamic attribute that return new provider's
13631369
delegate (alias of method ``Provider.delegate()``).
13641370
- Add support of six 1.11.0.
13651371
- Regenerate C sources using Cython 0.27.1.
@@ -1376,7 +1382,7 @@ Misc:
13761382

13771383
3.5.0
13781384
-----
1379-
- Add functionality for initializing ``Configuration`` provider with default
1385+
- Add functionality for initializing ``Configuration`` provider with default
13801386
values.
13811387

13821388
3.4.8
@@ -1399,7 +1405,7 @@ Misc:
13991405

14001406
3.4.4
14011407
-----
1402-
- Add ``Provider.last_overriding`` read-only property that points to last
1408+
- Add ``Provider.last_overriding`` read-only property that points to last
14031409
overriding provider, if any. If target provider is not overridden, ``None``
14041410
would be returned.
14051411
- Update example of writing custom providers.
@@ -1413,7 +1419,7 @@ Misc:
14131419
3.4.2
14141420
-----
14151421
- Make ``Provider`` overriding methods thread safe:
1416-
``Provider.override(provider)``, ``Provider.reset_last_overriding()``,
1422+
``Provider.override(provider)``, ``Provider.reset_last_overriding()``,
14171423
``Provider.reset_override()``.
14181424
- Refactor storage locking of ``ThreadSafeSingleton`` provider.
14191425
- Fix few ``pydocstyle`` errors in examples.
@@ -1485,8 +1491,8 @@ Misc:
14851491

14861492
3.2.4
14871493
-----
1488-
- Switch to single version of documentation for getting shorter urls (without
1489-
``/en/stable/``). Add appropriate redirects for compatibility with previous
1494+
- Switch to single version of documentation for getting shorter urls (without
1495+
``/en/stable/``). Add appropriate redirects for compatibility with previous
14901496
links.
14911497
- Update copyright date.
14921498

@@ -1505,7 +1511,7 @@ Misc:
15051511

15061512
3.2.0
15071513
-----
1508-
- Add ``Configuration`` provider for late static binding of configuration
1514+
- Add ``Configuration`` provider for late static binding of configuration
15091515
options.
15101516

15111517
3.1.5
@@ -1515,7 +1521,7 @@ Misc:
15151521

15161522
3.1.4
15171523
-----
1518-
- Move ``inline`` functions from class level to module level for removing them
1524+
- Move ``inline`` functions from class level to module level for removing them
15191525
from virtual table and enable inlining.
15201526

15211527
3.1.3
@@ -1547,34 +1553,34 @@ Misc:
15471553

15481554
- **Providers**
15491555

1550-
1. All providers from ``dependency_injector.providers`` package are
1556+
1. All providers from ``dependency_injector.providers`` package are
15511557
implemented as C extension types using Cython.
15521558
2. Add ``BaseSingleton`` super class for all singleton providers.
1553-
3. Make ``Singleton`` provider not thread-safe. It makes performance of
1559+
3. Make ``Singleton`` provider not thread-safe. It makes performance of
15541560
``Singleton`` provider 10x times faster.
1555-
4. Add ``ThreadSafeSingleton`` provider - thread-safe version of
1561+
4. Add ``ThreadSafeSingleton`` provider - thread-safe version of
15561562
``Singleton`` provider.
1557-
5. Add ``ThreadLocalSingleton`` provider - ``Singleton`` provider that uses
1563+
5. Add ``ThreadLocalSingleton`` provider - ``Singleton`` provider that uses
15581564
thread-local storage.
1559-
6. Remove ``provides`` attribute from ``Factory`` and ``Singleton``
1565+
6. Remove ``provides`` attribute from ``Factory`` and ``Singleton``
15601566
providers.
1561-
7. Add ``set_args()`` and ``clear_args()`` methods for ``Callable``,
1567+
7. Add ``set_args()`` and ``clear_args()`` methods for ``Callable``,
15621568
``Factory`` and ``Singleton`` providers.
15631569

15641570
- **Containers**
15651571

1566-
1. Module ``dependency_injector.containers`` was split into submodules
1572+
1. Module ``dependency_injector.containers`` was split into submodules
15671573
without any functional changes.
15681574

15691575
- **Utils**
15701576

1571-
1. Module ``dependency_injector.utils`` is split into
1577+
1. Module ``dependency_injector.utils`` is split into
15721578
``dependency_injector.containers`` and ``dependency_injector.providers``.
15731579

15741580
- **Miscellaneous**
15751581

15761582
1. Remove ``@inject`` decorator.
1577-
2. Add makefile (``clean``, ``test``, ``build``, ``install``, ``uninstall``
1583+
2. Add makefile (``clean``, ``test``, ``build``, ``install``, ``uninstall``
15781584
& ``publish`` commands).
15791585
3. Update repository structure:
15801586

@@ -1641,7 +1647,7 @@ Misc:
16411647

16421648
2.0.0
16431649
------
1644-
- Introduce new injections style for ``Callable``, ``Factory`` &
1650+
- Introduce new injections style for ``Callable``, ``Factory`` &
16451651
``Singleton`` providers.
16461652
- Drop providers: ``Static``, ``Value``, ``Function``, ``Class``, ``Config``.
16471653
- Increase performance of making injections in 2 times (+100%).
@@ -1654,8 +1660,8 @@ Misc:
16541660

16551661
1.17.0
16561662
------
1657-
- Add ``add_injections()`` method to ``Callable``, ``DelegatedCallable``,
1658-
``Factory``, ``DelegatedFactory``, ``Singleton`` and ``DelegatedSingleton``
1663+
- Add ``add_injections()`` method to ``Callable``, ``DelegatedCallable``,
1664+
``Factory``, ``DelegatedFactory``, ``Singleton`` and ``DelegatedSingleton``
16591665
providers.
16601666
- Fix bug with accessing to declarative catalog attributes from instance level.
16611667

@@ -1683,14 +1689,14 @@ Misc:
16831689
- Add "Examples" section into documentation.
16841690
- Add "Movie Lister" example.
16851691
- Add "Services" example.
1686-
- Move project documentation into organisation's domain
1692+
- Move project documentation into organisation's domain
16871693
(dependency-injector.ets-labs.org).
16881694

16891695
1.15.2
16901696
------
1691-
- [Refactoring] split ``catalogs`` module into smaller modules,
1697+
- [Refactoring] split ``catalogs`` module into smaller modules,
16921698
``catalogs`` module become a package.
1693-
- [Refactoring] split ``providers`` module into smaller modules,
1699+
- [Refactoring] split ``providers`` module into smaller modules,
16941700
``providers`` module become a package.
16951701
- Update introduction documentation.
16961702

@@ -1700,7 +1706,7 @@ Misc:
17001706

17011707
1.15.0
17021708
------
1703-
- Add ``Provider.provide()`` method. ``Provider.__call__()`` become a
1709+
- Add ``Provider.provide()`` method. ``Provider.__call__()`` become a
17041710
reference to ``Provider.provide()``.
17051711
- Add provider overriding context.
17061712
- Update main examples and README.
@@ -1730,7 +1736,7 @@ Misc:
17301736

17311737
1.14.6
17321738
------
1733-
- Add ``cls`` alias for ``provides`` attributes of ``Factory``,
1739+
- Add ``cls`` alias for ``provides`` attributes of ``Factory``,
17341740
``DelegatedFactory``, ``Singleton`` and ``DelegatedSingleton`` providers.
17351741

17361742
1.14.5
@@ -1789,35 +1795,35 @@ Misc:
17891795

17901796
1.11.1
17911797
------
1792-
Previous state of *Dependency Injector* framework (0.11.0 version) is
1793-
considered to be production ready / stable, so current release is considered
1798+
Previous state of *Dependency Injector* framework (0.11.0 version) is
1799+
considered to be production ready / stable, so current release is considered
17941800
to be the first major release.
17951801

1796-
- Increase major version.
1802+
- Increase major version.
17971803
- Backward compatibility with all previous versions above 0.7.6 has been saved.
17981804

17991805
0.11.0
18001806
------
1801-
- Rename ``AbstractCatalog`` to ``DeclarativeCatalog``
1807+
- Rename ``AbstractCatalog`` to ``DeclarativeCatalog``
18021808
(with backward compatibility).
18031809
- Rename ``catalog`` module to ``catalogs`` with backward compatibility.
18041810
- Implement dynamic binding of providers for ``DeclarativeCatalog``.
18051811
- Add ``DynamicCatalog``.
1806-
- Change restrictions for providers-to-catalogs bindings - provider could be
1812+
- Change restrictions for providers-to-catalogs bindings - provider could be
18071813
bound to several catalogs with different names.
18081814
- Restrict overriding of providers by themselves.
18091815
- Restrict overriding of catalogs by themselves.
1810-
- Make ``DeclarativeCatalog.last_overriding`` attribute to be ``None`` by
1816+
- Make ``DeclarativeCatalog.last_overriding`` attribute to be ``None`` by
18111817
default.
1812-
- Make ``Provider.last_overriding`` attribute to be ``None`` by
1818+
- Make ``Provider.last_overriding`` attribute to be ``None`` by
18131819
default.
18141820
- Refactor catalogs and providers modules.
18151821
- Add API documentation
18161822
- Improve user's guides and examples.
18171823

18181824
0.10.5
18191825
------
1820-
- Add more representable implementation for ``AbstractCatalog`` and
1826+
- Add more representable implementation for ``AbstractCatalog`` and
18211827
``AbstractCatalog.Bundle``.
18221828

18231829
0.10.4
@@ -1841,17 +1847,17 @@ to be the first major release.
18411847
- Add functionality for creating ``AbstractCatalog`` provider bundles.
18421848
- Improve ``AbstractCatalog`` inheritance.
18431849
- Improve ``AbstractCatalog`` overriding.
1844-
- Add images for catalog "Writing catalogs" and "Operating with catalogs"
1850+
- Add images for catalog "Writing catalogs" and "Operating with catalogs"
18451851
examples.
1846-
- Add functionality for using positional argument injections with
1847-
``Factory``, ``Singleton``, ``Callable`` providers and
1852+
- Add functionality for using positional argument injections with
1853+
``Factory``, ``Singleton``, ``Callable`` providers and
18481854
``inject`` decorator.
18491855
- Add functionality for decorating classes with ``@inject``.
1850-
- Add ``Singleton.injections`` attribute that represents a tuple of all
1856+
- Add ``Singleton.injections`` attribute that represents a tuple of all
18511857
``Singleton`` injections (including args, kwargs, attributes and methods).
1852-
- Add ``Callable.injections`` attribute that represents a tuple of all
1858+
- Add ``Callable.injections`` attribute that represents a tuple of all
18531859
``Callable`` injections (including args and kwargs).
1854-
- Add optimization for ``Injection.value`` property that will compute
1860+
- Add optimization for ``Injection.value`` property that will compute
18551861
type of injection once, instead of doing this on every call.
18561862
- Add ``VERSION`` constant for verification of currently installed version.
18571863
- Add support of Python 3.5.
@@ -1861,7 +1867,7 @@ to be the first major release.
18611867
0.9.5
18621868
-----
18631869
- Change provider attributes scope to public.
1864-
- Add ``Factory.injections`` attribute that represents a tuple of all
1870+
- Add ``Factory.injections`` attribute that represents a tuple of all
18651871
``Factory`` injections (including kwargs, attributes and methods).
18661872

18671873
0.9.4
@@ -1878,14 +1884,14 @@ to be the first major release.
18781884

18791885
0.9.1
18801886
-----
1881-
- Add simplified syntax of kwarg injections for ``di.Factory`` and
1882-
``di.Singleton`` providers:
1887+
- Add simplified syntax of kwarg injections for ``di.Factory`` and
1888+
``di.Singleton`` providers:
18831889
``di.Factory(SomeClass, dependency1=injectable_provider_or_value)``.
18841890
- Add simplified syntax of kwarg injections for ``di.Callable`` provider:
18851891
``di.Callable(some_callable, dependency1=injectable_provider_or_value)``
18861892
- Add simplified syntax of kwarg injections for ``@di.inject`` decorator:
18871893
``@di.inject(dependency1=injectable_provider_or_value)``.
1888-
- Optimize ``@di.inject()`` decorations when they were made several times for
1894+
- Optimize ``@di.inject()`` decorations when they were made several times for
18891895
the same callback.
18901896
- Add minor refactorings.
18911897
- Fix of minor documentation issues.
@@ -1905,21 +1911,21 @@ to be the first major release.
19051911
0.7.6
19061912
-----
19071913

1908-
- Adding support of six from 1.7.0 to 1.9.0.
1909-
- Factory / Singleton providers are free from restriction to operate with
1910-
classes only. This feature gives a change to use factory method and
1914+
- Adding support of six from 1.7.0 to 1.9.0.
1915+
- Factory / Singleton providers are free from restriction to operate with
1916+
classes only. This feature gives a change to use factory method and
19111917
functions with Factory / Singleton providers.
1912-
- All attributes of all entities that have to be protected was renamed using
1913-
``_protected`` manner.
1914-
- Providers extending was improved by implementing overriding logic in
1915-
``Provider.__call__()`` and moving providing logic into
1918+
- All attributes of all entities that have to be protected was renamed using
1919+
``_protected`` manner.
1920+
- Providers extending was improved by implementing overriding logic in
1921+
``Provider.__call__()`` and moving providing logic into
19161922
``Provider._provide()``.
1917-
- ``NewInstance`` provider was renamed to ``Factory`` provider.
1918-
``NewInstance`` still can be used, but it considered to be deprecated and
1923+
- ``NewInstance`` provider was renamed to ``Factory`` provider.
1924+
``NewInstance`` still can be used, but it considered to be deprecated and
19191925
will be removed in further releases.
1920-
- ``@inject`` decorator was refactored to keep all injections in
1926+
- ``@inject`` decorator was refactored to keep all injections in
19211927
``_injections`` attribute of decorated callback. It will give a possibility to
1922-
track all the injections of particular callbacks and gives some performance
1928+
track all the injections of particular callbacks and gives some performance
19231929
boost due minimizing number of calls for doing injections.
19241930
- A lot of documentation updates were made.
19251931
- A lot of examples were added.

setup.py

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -104,11 +104,7 @@ def _open(filename):
104104
"License :: OSI Approved :: BSD License",
105105
"Operating System :: OS Independent",
106106
"Programming Language :: Python",
107-
"Programming Language :: Python :: 2",
108-
"Programming Language :: Python :: 2.7",
109107
"Programming Language :: Python :: 3",
110-
"Programming Language :: Python :: 3.5",
111-
"Programming Language :: Python :: 3.6",
112108
"Programming Language :: Python :: 3.7",
113109
"Programming Language :: Python :: 3.8",
114110
"Programming Language :: Python :: 3.9",

0 commit comments

Comments
 (0)