Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

unable to build pydantic-core on openbsd #1195

Closed
Monallabs opened this issue Feb 17, 2024 · 1 comment
Closed

unable to build pydantic-core on openbsd #1195

Monallabs opened this issue Feb 17, 2024 · 1 comment
Assignees

Comments

@Monallabs
Copy link

Trying to build this on openbsd (7.4) which as rust (1.72.1) and maturin (0.13.7). Fails with error:

error[E0446]: crate-private type `extra::Extra<'_>` in public interface
         --> src/serializers/fields.rs:149:5
          |
      149 | /     pub fn main_to_python<'py>(
      150 | |         &self,
      151 | |         py: Python<'py>,
      152 | |         main_iter: impl Iterator<Item = PyResult<(&'py PyAny, &'py PyAny)>>,
      ...   |
      155 | |         extra: Extra,
      156 | |     ) -> PyResult<&'py PyDict> {
          | |______________________________^ can't leak crate-private type
          |
         ::: src/serializers/extra.rs:73:1
          |
      73  |   pub(crate) struct Extra<'a> {
          |   --------------------------- `extra::Extra<'_>` declared as crate-private
      
      error[E0446]: crate-private type `extra::Extra<'_>` in public interface
         --> src/serializers/fields.rs:214:5
          |
      214 | /     pub fn main_serde_serialize<'py, S: serde::ser::Serializer>(
      215 | |         &self,
      216 | |         main_iter: impl Iterator<Item = PyResult<(&'py PyAny, &'py PyAny)>>,
      217 | |         expected_len: usize,
      ...   |
      221 | |         extra: Extra,
      222 | |     ) -> Result<S::SerializeMap, S::Error> {
          | |__________________________________________^ can't leak crate-private type
          |
         ::: src/serializers/extra.rs:73:1
          |
      73  |   pub(crate) struct Extra<'a> {
          |   --------------------------- `extra::Extra<'_>` declared as crate-private
      
      error[E0446]: crate-private type `extra::Extra<'_>` in public interface
         --> src/serializers/fields.rs:260:5
          |
      260 | /     pub fn add_computed_fields_python(
      261 | |         &self,
      262 | |         model: Option<&PyAny>,
      263 | |         output_dict: &PyDict,
      ...   |
      266 | |         extra: &Extra,
      267 | |     ) -> PyResult<()> {
          | |_____________________^ can't leak crate-private type
          |
         ::: src/serializers/extra.rs:73:1
          |
      73  |   pub(crate) struct Extra<'a> {
          |   --------------------------- `extra::Extra<'_>` declared as crate-private
      
      error[E0446]: crate-private type `extra::Extra<'_>` in public interface
         --> src/serializers/fields.rs:277:5
          |
      277 | /     pub fn add_computed_fields_json<S: serde::ser::Serializer>(
      278 | |         &self,
      279 | |         model: Option<&PyAny>,
      280 | |         map: &mut S::SerializeMap,
      ...   |
      283 | |         extra: &Extra,
      284 | |     ) -> Result<(), S::Error> {
          | |_____________________________^ can't leak crate-private type
          |
         ::: src/serializers/extra.rs:73:1
          |
      73  |   pub(crate) struct Extra<'a> {
          |   --------------------------- `extra::Extra<'_>` declared as crate-private
      
      For more information about this error, try `rustc --explain E0446`.
      error: could not compile `pydantic-core` (lib) due to 4 previous errors
      ð¥ maturin failed
        Caused by: Failed to build a native library through cargo
        Caused by: Cargo build finished with "exit status: 101": `PYO3_ENVIRONMENT_SIGNATURE="cpython-3.12-64bit" PYO3_PYTHON="/home/kabiraatmonallabs/.local/share/virtualenvs/ofjustpy-IRz21Ee9/bin/python" PYTHON_SYS_EXECUTABLE="/home/kabiraatmonallabs/.local/share/virtualenvs/ofjustpy-IRz21Ee9/bin/python" "cargo" "rustc" "--features" "pyo3/extension-module" "--message-format" "json-render-diagnostics" "--manifest-path" "/home/kabiraatmonallabs/Development/ThirdParty/pydantic-core/Cargo.toml" "--release" "--lib" "--crate-type" "cdylib"`
      Error: command ['maturin', 'pep517', 'build-wheel', '-i', '/home/kabiraatmonallabs/.local/share/virtualenvs/ofjustpy-IRz21Ee9/bin/python', '--compatibility', 'off', '--editable'] returned non-zero exit status 1
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building editable for pydantic_core
Failed to build pydantic_core
ERROR: Could not build wheels for pydantic_core, which is required to install pyproject.toml-based projects
gmake: *** [Makefile:18: install] Error 
@davidhewitt
Copy link
Contributor

Thanks for the report, will close this as duplicate of #1176 (which I think we may aim to write a patch fix for soon).

@davidhewitt davidhewitt closed this as not planned Won't fix, can't repro, duplicate, stale Feb 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants