metaflow-netflixext 1.3.4.dev6__tar.gz → 1.3.4.dev7__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 (65) hide show
  1. {metaflow_netflixext-1.3.4.dev6/metaflow_netflixext.egg-info → metaflow_netflixext-1.3.4.dev7}/PKG-INFO +1 -1
  2. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/pypi_package_builder.py +12 -0
  3. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/resolvers/pip_resolver.py +14 -0
  4. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/resolvers/pylock_toml_resolver.py +5 -0
  5. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/utils.py +1 -1
  6. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7/metaflow_netflixext.egg-info}/PKG-INFO +1 -1
  7. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/LICENSE +0 -0
  8. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/README.md +0 -0
  9. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/__init__.py +0 -0
  10. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/cmd/debug/__init__.py +0 -0
  11. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/cmd/debug/constants.py +0 -0
  12. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/cmd/debug/current_stub_generator.py +0 -0
  13. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/cmd/debug/debug_cmd.py +0 -0
  14. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/cmd/debug/debug_script_generator.py +0 -0
  15. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/cmd/debug/debug_stub_generator.py +0 -0
  16. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/cmd/debug/debug_utils.py +0 -0
  17. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/cmd/debug/jupyter_instructions_markdown.py +0 -0
  18. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/cmd/debug/jupyter_title_markdown.py +0 -0
  19. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/cmd/environment/__init__.py +0 -0
  20. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/cmd/environment/environment_cmd.py +0 -0
  21. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/cmd/environment/utils.py +0 -0
  22. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/cmd/mfextinit_netflixext.py +0 -0
  23. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/config/mfextinit_netflixext.py +0 -0
  24. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/exceptions/__init__.py +0 -0
  25. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/exceptions/decorators.py +0 -0
  26. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/exceptions/http_helpers.py +0 -0
  27. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/generate_vendor.py +0 -0
  28. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/http_helpers.py +0 -0
  29. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/__init__.py +0 -0
  30. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/conda.py +0 -0
  31. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/conda_common_decorator.py +0 -0
  32. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/conda_environment.py +0 -0
  33. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/conda_flow_decorator.py +0 -0
  34. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/conda_flow_mutator.py +0 -0
  35. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/conda_lock_micromamba_server.py +0 -0
  36. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/conda_step_decorator.py +0 -0
  37. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/env_descr.py +0 -0
  38. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/envsresolver.py +0 -0
  39. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/parsers.py +0 -0
  40. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/remote_bootstrap.py +0 -0
  41. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/resolvers/__init__.py +0 -0
  42. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/resolvers/builder_envs_resolver.py +0 -0
  43. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/resolvers/conda_lock_resolver.py +0 -0
  44. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/resolvers/conda_resolver.py +0 -0
  45. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/resolvers/micromamba_server_resolver.py +0 -0
  46. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/resources/logo-32x32.png +0 -0
  47. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/resources/logo-64x64.png +0 -0
  48. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/resources/logo-svg.svg +0 -0
  49. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/conda/terminal_menu.py +0 -0
  50. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/coverage/__init__.py +0 -0
  51. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/coverage/coveragerc.py +0 -0
  52. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/coverage/generate_coveragerc.py +0 -0
  53. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/coverage/setup_coverage.py +0 -0
  54. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/coverage/upload_coverage_files.py +0 -0
  55. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/environment_cli.py +0 -0
  56. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/plugins/mfextinit_netflixext.py +0 -0
  57. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/toplevel/mfextinit_netflixext.py +0 -0
  58. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/toplevel/netflixext_toplevel.py +0 -0
  59. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_extensions/netflix_ext/toplevel/netflixext_version.py +0 -0
  60. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_netflixext.egg-info/SOURCES.txt +0 -0
  61. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_netflixext.egg-info/dependency_links.txt +0 -0
  62. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_netflixext.egg-info/requires.txt +0 -0
  63. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/metaflow_netflixext.egg-info/top_level.txt +0 -0
  64. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/setup.cfg +0 -0
  65. {metaflow_netflixext-1.3.4.dev6 → metaflow_netflixext-1.3.4.dev7}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: metaflow-netflixext
3
- Version: 1.3.4.dev6
3
+ Version: 1.3.4.dev7
4
4
  Summary: Metaflow extensions from Netflix
5
5
  Author: Netflix Metaflow Developers
6
6
  Author-email: metaflow-dev@netflix.com
@@ -354,6 +354,18 @@ def _build_with_pip(
354
354
  debug.conda_exec("%s: building from '%s' in '%s'" % (key, src, dest_path))
355
355
 
356
356
  addl_env = {"PATH": os.path.dirname(binary) + ":" + os.environ["PATH"]}
357
+
358
+ # Constrain setuptools<82 in pip's build isolation subprocesses.
359
+ # The top-level pip uses --isolated (ignores env vars), but the build
360
+ # isolation subprocess that installs build deps does NOT, so it honors
361
+ # PIP_CONSTRAINT. This prevents setuptools>=82 (which removed
362
+ # pkg_resources) from being installed in the build environment.
363
+ constraint_file = os.path.join(dest_path, "constraints.txt")
364
+ os.makedirs(dest_path, exist_ok=True)
365
+ with open(constraint_file, "w") as cf:
366
+ cf.write("setuptools<82\n")
367
+ addl_env["PIP_CONSTRAINT"] = constraint_file
368
+
357
369
  conda.call_binary(
358
370
  [
359
371
  "-m",
@@ -144,6 +144,20 @@ class PipResolver(Resolver):
144
144
  ]
145
145
  args.extend(extra_args)
146
146
 
147
+ # Constrain setuptools<82 so that build isolation environments
148
+ # retain pkg_resources (removed in setuptools 82). Many third-party
149
+ # packages still use pkg_resources in their setup.py.
150
+ constraint_file = os.path.join(pypi_dir, "constraints.txt")
151
+ with open(constraint_file, "w") as cf:
152
+ cf.write("setuptools<82\n")
153
+ args.extend(["--constraint", constraint_file])
154
+ # Also set PIP_CONSTRAINT env var so the constraint propagates to
155
+ # pip's build isolation subprocesses (--constraint only applies to
156
+ # the top-level resolution, not to build dependency installation).
157
+ # The main pip command uses --isolated which ignores env vars, but
158
+ # build isolation subprocesses do not, so they will honor this.
159
+ addl_env["PIP_CONSTRAINT"] = constraint_file
160
+
147
161
  pypi_sources = sources.get("pypi", [])
148
162
  # The first source is always the index
149
163
  args.extend(["-i", pypi_sources[0]])
@@ -116,6 +116,7 @@ class PylockTomlResolver(Resolver):
116
116
  architecture,
117
117
  supported_tags,
118
118
  filter_func,
119
+ full_id_unique_keys,
119
120
  )
120
121
 
121
122
  return (resolved_env, builder_envs)
@@ -220,6 +221,7 @@ class PylockTomlResolver(Resolver):
220
221
  Dict[str, List[PackageSpecification]],
221
222
  ]
222
223
  ] = None,
224
+ full_id_unique_keys: Dict[str, str] = {},
223
225
  ) -> ResolvedEnvironment:
224
226
 
225
227
  packages_dict = PylockTomlResolver._pylock_toml_root_obj_to_packages(
@@ -244,6 +246,7 @@ class PylockTomlResolver(Resolver):
244
246
  sources,
245
247
  extras,
246
248
  architecture,
249
+ full_id_unique_keys=full_id_unique_keys,
247
250
  )
248
251
 
249
252
  return resolved_env
@@ -363,6 +366,7 @@ class PylockTomlResolver(Resolver):
363
366
  sources: Optional[Dict[str, List[str]]],
364
367
  extras: Optional[Dict[str, List[str]]],
365
368
  architecture: Optional[str] = None,
369
+ full_id_unique_keys: Optional[Dict[str, str]] = None,
366
370
  ):
367
371
  resolved_env = ResolvedEnvironment(
368
372
  deps,
@@ -371,6 +375,7 @@ class PylockTomlResolver(Resolver):
371
375
  architecture,
372
376
  all_packages=packages,
373
377
  env_type=env_type,
378
+ full_id_unique_keys=full_id_unique_keys,
374
379
  )
375
380
 
376
381
  return resolved_env
@@ -79,7 +79,7 @@ _BUILDER_ENVS_PACKAGES = (
79
79
  "pip",
80
80
  "wheel",
81
81
  "tomli",
82
- "setuptools",
82
+ "setuptools<82", # pkg_resources removed in setuptools 82; many packages still need it
83
83
  "uv<=0.7.8; python_version<'3.8'",
84
84
  "uv ; python_version>='3.8'",
85
85
  )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: metaflow-netflixext
3
- Version: 1.3.4.dev6
3
+ Version: 1.3.4.dev7
4
4
  Summary: Metaflow extensions from Netflix
5
5
  Author: Netflix Metaflow Developers
6
6
  Author-email: metaflow-dev@netflix.com