advexp-settings-cloud 0.0.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,11 @@
1
+ Copyright 2026 Alexey Ivakin. All rights reserved.
2
+
3
+ This distribution is a PyPI name-reservation placeholder published by Advexp.
4
+ It contains no functional code: importing it raises ImportError on purpose.
5
+
6
+ The real advexp-settings-cloud package — the Cloud edition of Advexp.Settings
7
+ (cloud settings backends) — is commercial software licensed to customers under
8
+ the Advexp Commercial EULA (draft:
9
+ https://advexp.github.io/advexp.settings/eula/) and distributed via the
10
+ Advexp private package index. See https://advexp.github.io/advexp.settings/
11
+ for details.
@@ -0,0 +1,48 @@
1
+ Metadata-Version: 2.4
2
+ Name: advexp-settings-cloud
3
+ Version: 0.0.1
4
+ Summary: Defensive PyPI name reservation; the real Advexp.Settings Cloud plugin ships via the Advexp private index
5
+ Author: Alexey Ivakin
6
+ Project-URL: Homepage, https://advexp.github.io/advexp.settings/
7
+ Project-URL: Repository, https://github.com/advexp/advexp.settings.python
8
+ Classifier: Intended Audience :: Developers
9
+ Classifier: Operating System :: OS Independent
10
+ Classifier: Programming Language :: Python :: 3
11
+ Classifier: Topic :: Software Development :: Libraries
12
+ Requires-Python: >=3.9
13
+ Description-Content-Type: text/markdown
14
+ License-File: LICENSE
15
+ Dynamic: license-file
16
+
17
+ # advexp-settings-cloud
18
+
19
+ **This project is a defensive name reservation published by Advexp. It contains no code.**
20
+
21
+ The real `advexp-settings-cloud` package — the Advexp.Settings Cloud plugin — is
22
+ **not distributed on the public PyPI**. It is available to licensed customers
23
+ through the Advexp private package index.
24
+
25
+ ## Why this placeholder exists
26
+
27
+ Distributing paid packages from a private index while their names are free on the
28
+ public PyPI invites a *dependency confusion* attack: an attacker registers the same
29
+ name on PyPI with an inflated version number, and package managers configured with
30
+ both indexes may pick the attacker's build.
31
+
32
+ Owning the name on PyPI makes this attack impossible. For the same reason this
33
+ placeholder is pinned to version `0.0.1` and will never be upgraded, so it can
34
+ never win version resolution against the real package served from the private
35
+ index.
36
+
37
+ ## License
38
+
39
+ Copyright 2026 Alexey Ivakin. All rights reserved. This placeholder is not
40
+ open-source licensed; the full notice ships in the LICENSE file of the
41
+ distribution. The real plugin is commercial software licensed under the
42
+ [Advexp Commercial EULA (draft)](https://advexp.github.io/advexp.settings/eula/).
43
+
44
+ ## I installed this package by mistake
45
+
46
+ Importing it raises `ImportError` on purpose. To install the real plugin,
47
+ configure the Advexp private package index as described at
48
+ <https://advexp.github.io/advexp.settings/>.
@@ -0,0 +1,32 @@
1
+ # advexp-settings-cloud
2
+
3
+ **This project is a defensive name reservation published by Advexp. It contains no code.**
4
+
5
+ The real `advexp-settings-cloud` package — the Advexp.Settings Cloud plugin — is
6
+ **not distributed on the public PyPI**. It is available to licensed customers
7
+ through the Advexp private package index.
8
+
9
+ ## Why this placeholder exists
10
+
11
+ Distributing paid packages from a private index while their names are free on the
12
+ public PyPI invites a *dependency confusion* attack: an attacker registers the same
13
+ name on PyPI with an inflated version number, and package managers configured with
14
+ both indexes may pick the attacker's build.
15
+
16
+ Owning the name on PyPI makes this attack impossible. For the same reason this
17
+ placeholder is pinned to version `0.0.1` and will never be upgraded, so it can
18
+ never win version resolution against the real package served from the private
19
+ index.
20
+
21
+ ## License
22
+
23
+ Copyright 2026 Alexey Ivakin. All rights reserved. This placeholder is not
24
+ open-source licensed; the full notice ships in the LICENSE file of the
25
+ distribution. The real plugin is commercial software licensed under the
26
+ [Advexp Commercial EULA (draft)](https://advexp.github.io/advexp.settings/eula/).
27
+
28
+ ## I installed this package by mistake
29
+
30
+ Importing it raises `ImportError` on purpose. To install the real plugin,
31
+ configure the Advexp private package index as described at
32
+ <https://advexp.github.io/advexp.settings/>.
@@ -0,0 +1,30 @@
1
+ [build-system]
2
+ requires = ["setuptools>=77"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "advexp-settings-cloud"
7
+ version = "0.0.1"
8
+ description = "Defensive PyPI name reservation; the real Advexp.Settings Cloud plugin ships via the Advexp private index"
9
+ readme = "README.md"
10
+ requires-python = ">=3.9"
11
+ # The real plugin is commercial (Advexp Commercial EULA via the private
12
+ # index); a custom license cannot be an SPDX expression, so the notice ships
13
+ # via license-files only
14
+ license-files = ["LICENSE"]
15
+ authors = [
16
+ { name = "Alexey Ivakin" },
17
+ ]
18
+ classifiers = [
19
+ "Intended Audience :: Developers",
20
+ "Operating System :: OS Independent",
21
+ "Programming Language :: Python :: 3",
22
+ "Topic :: Software Development :: Libraries",
23
+ ]
24
+
25
+ [project.urls]
26
+ Homepage = "https://advexp.github.io/advexp.settings/"
27
+ Repository = "https://github.com/advexp/advexp.settings.python"
28
+
29
+ [tool.setuptools.packages.find]
30
+ where = ["src"]
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,9 @@
1
+ """Defensive PyPI placeholder for the private Advexp.Settings Cloud plugin.
2
+
3
+ This distribution only reserves the name ``advexp-settings-cloud`` on the
4
+ public PyPI to prevent dependency-confusion attacks. Importing it raises
5
+ ImportError on purpose; the real plugin is distributed via the Advexp
6
+ private package index (https://advexp.github.io/advexp.settings/).
7
+ """
8
+
9
+ from . import _placeholder # noqa: F401 # the import itself raises ImportError
@@ -0,0 +1,9 @@
1
+ """The raise below is the entire payload of this distribution."""
2
+
3
+ _MESSAGE = (
4
+ "This is a defensive placeholder for the name 'advexp-settings-cloud' on PyPI. "
5
+ "It contains no code and cannot be used. The real Advexp.Settings Cloud plugin "
6
+ "is distributed via the Advexp private package index: https://advexp.github.io/advexp.settings/"
7
+ )
8
+
9
+ raise ImportError(_MESSAGE)
@@ -0,0 +1,48 @@
1
+ Metadata-Version: 2.4
2
+ Name: advexp-settings-cloud
3
+ Version: 0.0.1
4
+ Summary: Defensive PyPI name reservation; the real Advexp.Settings Cloud plugin ships via the Advexp private index
5
+ Author: Alexey Ivakin
6
+ Project-URL: Homepage, https://advexp.github.io/advexp.settings/
7
+ Project-URL: Repository, https://github.com/advexp/advexp.settings.python
8
+ Classifier: Intended Audience :: Developers
9
+ Classifier: Operating System :: OS Independent
10
+ Classifier: Programming Language :: Python :: 3
11
+ Classifier: Topic :: Software Development :: Libraries
12
+ Requires-Python: >=3.9
13
+ Description-Content-Type: text/markdown
14
+ License-File: LICENSE
15
+ Dynamic: license-file
16
+
17
+ # advexp-settings-cloud
18
+
19
+ **This project is a defensive name reservation published by Advexp. It contains no code.**
20
+
21
+ The real `advexp-settings-cloud` package — the Advexp.Settings Cloud plugin — is
22
+ **not distributed on the public PyPI**. It is available to licensed customers
23
+ through the Advexp private package index.
24
+
25
+ ## Why this placeholder exists
26
+
27
+ Distributing paid packages from a private index while their names are free on the
28
+ public PyPI invites a *dependency confusion* attack: an attacker registers the same
29
+ name on PyPI with an inflated version number, and package managers configured with
30
+ both indexes may pick the attacker's build.
31
+
32
+ Owning the name on PyPI makes this attack impossible. For the same reason this
33
+ placeholder is pinned to version `0.0.1` and will never be upgraded, so it can
34
+ never win version resolution against the real package served from the private
35
+ index.
36
+
37
+ ## License
38
+
39
+ Copyright 2026 Alexey Ivakin. All rights reserved. This placeholder is not
40
+ open-source licensed; the full notice ships in the LICENSE file of the
41
+ distribution. The real plugin is commercial software licensed under the
42
+ [Advexp Commercial EULA (draft)](https://advexp.github.io/advexp.settings/eula/).
43
+
44
+ ## I installed this package by mistake
45
+
46
+ Importing it raises `ImportError` on purpose. To install the real plugin,
47
+ configure the Advexp private package index as described at
48
+ <https://advexp.github.io/advexp.settings/>.
@@ -0,0 +1,9 @@
1
+ LICENSE
2
+ README.md
3
+ pyproject.toml
4
+ src/advexp_settings_cloud/__init__.py
5
+ src/advexp_settings_cloud/_placeholder.py
6
+ src/advexp_settings_cloud.egg-info/PKG-INFO
7
+ src/advexp_settings_cloud.egg-info/SOURCES.txt
8
+ src/advexp_settings_cloud.egg-info/dependency_links.txt
9
+ src/advexp_settings_cloud.egg-info/top_level.txt