c2cwsgiutils 6.2.0.dev65__tar.gz → 6.2.0.dev66__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.
Files changed (66) hide show
  1. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/PKG-INFO +1 -1
  2. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/acceptance/package-lock.json +4 -4
  3. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/acceptance/package.json +1 -1
  4. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/auth.py +8 -8
  5. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/broadcast/redis.py +1 -1
  6. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/coverage_setup.py +1 -1
  7. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/debug/_views.py +1 -1
  8. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/health_check.py +3 -3
  9. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/pyproject.toml +4 -4
  10. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/LICENSE +0 -0
  11. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/README.md +0 -0
  12. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/__init__.py +0 -0
  13. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/acceptance/__init__.py +0 -0
  14. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/acceptance/connection.py +0 -0
  15. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/acceptance/image.py +0 -0
  16. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/acceptance/print.py +0 -0
  17. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/acceptance/screenshot.js +0 -0
  18. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/acceptance/utils.py +0 -0
  19. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/broadcast/__init__.py +0 -0
  20. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/broadcast/interface.py +0 -0
  21. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/broadcast/local.py +0 -0
  22. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/broadcast/utils.py +0 -0
  23. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/client_info.py +0 -0
  24. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/config_utils.py +0 -0
  25. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/db.py +0 -0
  26. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/db_maintenance_view.py +0 -0
  27. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/debug/__init__.py +0 -0
  28. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/debug/_listeners.py +0 -0
  29. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/debug/utils.py +0 -0
  30. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/errors.py +0 -0
  31. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/index.py +0 -0
  32. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/loader.py +0 -0
  33. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/logging_view.py +0 -0
  34. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/models_graph.py +0 -0
  35. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/pretty_json.py +0 -0
  36. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/profiler.py +0 -0
  37. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/prometheus.py +0 -0
  38. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/py.typed +0 -0
  39. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/pyramid.py +0 -0
  40. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/pyramid_logging.py +0 -0
  41. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/redis_stats.py +0 -0
  42. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/redis_utils.py +0 -0
  43. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/request_tracking/__init__.py +0 -0
  44. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/request_tracking/_sql.py +0 -0
  45. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/scripts/__init__.py +0 -0
  46. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/scripts/genversion.py +0 -0
  47. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/scripts/stats_db.py +0 -0
  48. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/scripts/test_print.py +0 -0
  49. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/sentry.py +0 -0
  50. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/services.py +0 -0
  51. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/setup_process.py +0 -0
  52. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/sql_profiler/__init__.py +0 -0
  53. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/sql_profiler/_impl.py +0 -0
  54. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/sqlalchemylogger/README.md +0 -0
  55. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/sqlalchemylogger/__init__.py +0 -0
  56. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/sqlalchemylogger/_filters.py +0 -0
  57. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/sqlalchemylogger/_models.py +0 -0
  58. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/sqlalchemylogger/examples/example.py +0 -0
  59. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/sqlalchemylogger/handlers.py +0 -0
  60. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/static/favicon-16x16.png +0 -0
  61. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/static/favicon-32x32.png +0 -0
  62. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/stats_pyramid/__init__.py +0 -0
  63. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/stats_pyramid/_db_spy.py +0 -0
  64. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/stats_pyramid/_pyramid_spy.py +0 -0
  65. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/templates/index.html.mako +0 -0
  66. {c2cwsgiutils-6.2.0.dev65 → c2cwsgiutils-6.2.0.dev66}/c2cwsgiutils/version.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: c2cwsgiutils
3
- Version: 6.2.0.dev65
3
+ Version: 6.2.0.dev66
4
4
  Summary: Common utilities for Camptocamp WSGI applications
5
5
  Home-page: https://github.com/camptocamp/c2cwsgiutils
6
6
  License: BSD-2-Clause
@@ -5,7 +5,7 @@
5
5
  "packages": {
6
6
  "": {
7
7
  "dependencies": {
8
- "commander": "13.0.0",
8
+ "commander": "13.1.0",
9
9
  "puppeteer": "24.1.1"
10
10
  }
11
11
  },
@@ -318,9 +318,9 @@
318
318
  "license": "MIT"
319
319
  },
320
320
  "node_modules/commander": {
321
- "version": "13.0.0",
322
- "resolved": "https://registry.npmjs.org/commander/-/commander-13.0.0.tgz",
323
- "integrity": "sha512-oPYleIY8wmTVzkvQq10AEok6YcTC4sRUBl8F9gVuwchGVUCTbl/vhLTaQqutuuySYOsu8YTgV+OxKc/8Yvx+mQ==",
321
+ "version": "13.1.0",
322
+ "resolved": "https://registry.npmjs.org/commander/-/commander-13.1.0.tgz",
323
+ "integrity": "sha512-/rFeCpNJQbhSZjGVwO9RFV3xPqbnERS8MmIQzCtD/zl6gpJuV/bMLuN92oG3F7d8oDEHHRrujSXNUr8fpjntKw==",
324
324
  "license": "MIT",
325
325
  "engines": {
326
326
  "node": ">=18"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "dependencies": {
3
- "commander": "13.0.0",
3
+ "commander": "13.1.0",
4
4
  "puppeteer": "24.1.1"
5
5
  },
6
6
  "type": "module"
@@ -12,32 +12,32 @@ from requests_oauthlib import OAuth2Session
12
12
  from c2cwsgiutils.config_utils import config_bool, env_or_config, env_or_settings
13
13
 
14
14
  _COOKIE_AGE = 7 * 24 * 3600
15
- SECRET_PROP = "c2c.secret" # noqa: S105
16
- SECRET_ENV = "C2C_SECRET" # noqa: S105
15
+ SECRET_PROP = "c2c.secret" # noqa: S105, secret # nosec
16
+ SECRET_ENV = "C2C_SECRET" # noqa: S105, secret # nosec
17
17
  _GITHUB_REPOSITORY_PROP = "c2c.auth.github.repository"
18
18
  _GITHUB_REPOSITORY_ENV = "C2C_AUTH_GITHUB_REPOSITORY"
19
19
  _GITHUB_ACCESS_TYPE_PROP = "c2c.auth.github.access_type"
20
20
  _GITHUB_ACCESS_TYPE_ENV = "C2C_AUTH_GITHUB_ACCESS_TYPE"
21
21
  GITHUB_AUTH_URL_PROP = "c2c.auth.github.auth_url"
22
22
  GITHUB_AUTH_URL_ENV = "C2C_AUTH_GITHUB_AUTH_URL"
23
- GITHUB_TOKEN_URL_PROP = "c2c.auth.github.token_url" # noqa: S105
24
- GITHUB_TOKEN_URL_ENV = "C2C_AUTH_GITHUB_TOKEN_URL" # noqa: S105
23
+ GITHUB_TOKEN_URL_PROP = "c2c.auth.github.token_url" # noqa: S105, secret # nosec
24
+ GITHUB_TOKEN_URL_ENV = "C2C_AUTH_GITHUB_TOKEN_URL" # noqa: S105, secret # nosec
25
25
  GITHUB_USER_URL_PROP = "c2c.auth.github.user_url"
26
26
  GITHUB_USER_URL_ENV = "C2C_AUTH_GITHUB_USER_URL"
27
27
  _GITHUB_REPO_URL_PROP = "c2c.auth.github.repo_url"
28
28
  _GITHUB_REPO_URL_ENV = "C2C_AUTH_GITHUB_REPO_URL"
29
29
  GITHUB_CLIENT_ID_PROP = "c2c.auth.github.client_id"
30
30
  GITHUB_CLIENT_ID_ENV = "C2C_AUTH_GITHUB_CLIENT_ID"
31
- GITHUB_CLIENT_SECRET_PROP = "c2c.auth.github.client_secret" # noqa: S105
32
- GITHUB_CLIENT_SECRET_ENV = "C2C_AUTH_GITHUB_CLIENT_SECRET" # noqa: S105
31
+ GITHUB_CLIENT_SECRET_PROP = "c2c.auth.github.client_secret" # noqa: S105, secret # nosec
32
+ GITHUB_CLIENT_SECRET_ENV = "C2C_AUTH_GITHUB_CLIENT_SECRET" # noqa: S105, secret # nosec
33
33
  GITHUB_SCOPE_PROP = "c2c.auth.github.scope"
34
34
  GITHUB_SCOPE_ENV = "C2C_AUTH_GITHUB_SCOPE"
35
35
  # To be able to use private repository
36
36
  GITHUB_SCOPE_DEFAULT = "repo"
37
37
  GITHUB_AUTH_COOKIE_PROP = "c2c.auth.github.auth.cookie"
38
38
  GITHUB_AUTH_COOKIE_ENV = "C2C_AUTH_GITHUB_COOKIE"
39
- GITHUB_AUTH_SECRET_PROP = "c2c.auth.github.auth.secret" # noqa: S105
40
- GITHUB_AUTH_SECRET_ENV = "C2C_AUTH_GITHUB_SECRET" # noqa: S105
39
+ GITHUB_AUTH_SECRET_PROP = "c2c.auth.github.auth.secret" # noqa: S105, secret # nosec
40
+ GITHUB_AUTH_SECRET_ENV = "C2C_AUTH_GITHUB_SECRET" # noqa: S105, secret # nosec
41
41
  GITHUB_AUTH_PROXY_URL_PROP = "c2c.auth.github.auth.proxy_url"
42
42
  GITHUB_AUTH_PROXY_URL_ENV = "C2C_AUTH_GITHUB_PROXY_URL"
43
43
  USE_SESSION_PROP = "c2c.use_session"
@@ -90,7 +90,7 @@ class RedisBroadcaster(interface.BaseBroadcaster):
90
90
  cond.notify()
91
91
 
92
92
  answer_channel = self._get_channel(channel) + "".join(
93
- random.choice(string.ascii_uppercase + string.digits) # noqa: S311
93
+ random.choice(string.ascii_uppercase + string.digits) # noqa: S311 # nosec
94
94
  for _ in range(10)
95
95
  )
96
96
  _LOG.debug("Subscribing for broadcast answers on %s", answer_channel)
@@ -22,7 +22,7 @@ def includeme(config: Optional[pyramid.config.Configurator] = None) -> None:
22
22
  import coverage # pylint: disable=import-outside-toplevel
23
23
 
24
24
  _LOG.warning("Setting up code coverage")
25
- report_dir = "/tmp/coverage/api" # noqa: S108
25
+ report_dir = "/tmp/coverage/api" # noqa: S108 # nosec
26
26
  os.makedirs(report_dir, exist_ok=True)
27
27
  cov = coverage.Coverage(
28
28
  data_file=os.path.join(report_dir, "coverage"),
@@ -192,7 +192,7 @@ def _show_refs(request: pyramid.request.Request) -> pyramid.response.Response:
192
192
  if "analyze_type" in request.params:
193
193
  objs = objgraph.by_type(request.params["analyze_type"])
194
194
  elif "analyze_id" in request.params:
195
- objs = [objgraph.by(int(request.params["analyze_id"]))]
195
+ objs = [objgraph.by(int(request.params["analyze_id"]))] # pylint: disable=no-member
196
196
 
197
197
  args: dict[str, Any] = {
198
198
  "refcounts": True,
@@ -299,7 +299,7 @@ class HealthCheck:
299
299
  ):
300
300
  result = binded_session.execute(
301
301
  sqlalchemy.text(
302
- "SELECT version_num FROM " # noqa: S608
302
+ "SELECT version_num FROM " # noqa: S608 # nosec
303
303
  f"{sqlalchemy.sql.quoted_name(version_schema, True)}."
304
304
  f"{sqlalchemy.sql.quoted_name(version_table, True)}"
305
305
  )
@@ -493,8 +493,8 @@ class HealthCheck:
493
493
  _PROMETHEUS_HEALTH_CHECKS_FAILURE.labels(name=name).set(1)
494
494
  _LOG.warning("Health check %s failed", name, exc_info=True)
495
495
  failure = {"message": str(e), "timing": time.perf_counter() - start, "level": level}
496
- if isinstance(e, JsonCheckException) and e.json_data() is not None:
497
- failure["result"] = e.json_data()
496
+ if isinstance(e, JsonCheckException) and e.json_data() is not None: # pylint: disable=no-member
497
+ failure["result"] = e.json_data() # pylint: disable=no-member
498
498
  if is_auth or os.environ.get("DEVELOPMENT", "0") != "0":
499
499
  failure["stacktrace"] = traceback.format_exc()
500
500
  results["failures"][name] = failure
@@ -16,7 +16,7 @@ strict = true
16
16
 
17
17
  [tool.poetry]
18
18
  name = "c2cwsgiutils"
19
- version = "6.2.0.dev65"
19
+ version = "6.2.0.dev66"
20
20
  description = "Common utilities for Camptocamp WSGI applications"
21
21
  readme = "README.md"
22
22
  authors = ["Camptocamp <info@camptocamp.com>"]
@@ -79,7 +79,7 @@ objgraph = { version = "3.6.2", optional = true }
79
79
  psycopg2 = { version = "2.9.10", optional = true }
80
80
  pyramid = { version = "2.0.2", optional = true }
81
81
  pyramid-tm = { version = "2.6", optional = true }
82
- sentry-sdk = { version = "2.19.2", optional = true }
82
+ sentry-sdk = { version = "2.20.0", optional = true }
83
83
  ujson = { version = "5.10.0" }
84
84
  cee_syslog_handler = { version = "0.6.0" }
85
85
  SQLAlchemy = { version = "2.0.37", optional = true }
@@ -192,9 +192,9 @@ test_images = ["scikit-image"]
192
192
 
193
193
  [tool.poetry.group.dev.dependencies]
194
194
  # pylint = { version = "2.15.6" }
195
- prospector = { version = "1.13.3", extras = ["with_bandit", "with_mypy", "with_pyroma", "with_ruff"] }
195
+ prospector = { version = "1.14.0", extras = ["with_bandit", "with_mypy", "with_pyroma", "with_ruff"] }
196
196
  prospector-profile-duplicated = "1.10.4"
197
- prospector-profile-utils = "1.15.1"
197
+ prospector-profile-utils = "1.17.0"
198
198
  junit2html = "31.0.2"
199
199
  pytest = "8.3.4"
200
200
  pytest-cov = "6.0.0"