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

Fix: exceptions during build of bitserializer #25594

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

jrosiek
Copy link
Contributor

@jrosiek jrosiek commented Oct 11, 2024

Summary

Changes to recipe: bitserializer/[>=0.50]

Motivation

The build fails when two variants of the package are build on the same machine (with different with_rapidaml option value).

Details

(Apparently) The same source location is used by conan to build different variants of package. In effect, the same file is patched more than once, what causes an exception.


The same source location is used to build different variants of package (in our case `with_rapidaml` option). In effect, the patching is performed multiple times on the same file. It fails the second time, because the file is already patched.
@jcar87
Copy link
Contributor

jcar87 commented Oct 11, 2024

Hi @jrosiek, thanks for your contribution.

Could you provide more details as to which exceptions you get and how to reproduce the errors on our end? Thanks :)

@jrosiek
Copy link
Contributor Author

jrosiek commented Oct 11, 2024

Here you go:

conan remove 'bitserializer/*'
conan install --requires=bitserializer/0.70 -o '&:with_csv=True' -o '&:with_rapidyaml=True' --build=missing
conan install --requires=bitserializer/0.70 -o '&:with_csv=True' -o '&:with_rapidyaml=False' --build=missing

The with_csv option is required for the recipe to generate unique package_id for each install call; otherwise the configuration is treated as header-only and the second call would do nothing.

@AbrilRBS AbrilRBS self-assigned this Oct 14, 2024
@conan-center-bot
Copy link
Collaborator

Conan v1 pipeline ✔️

Warning

Conan Center will stop receiving updates for Conan 1.x packages soon - please see announcement.

All green in build 2 (8e51b7ad9a6b4efcf9bfa7ce77e86349914602f6):

  • bitserializer/0.65:
    Built 5 packages out of 11 (All logs)

  • bitserializer/0.70:
    Built 5 packages out of 11 (All logs)

  • bitserializer/0.50:
    Built 5 packages out of 11 (All logs)

  • bitserializer/0.44:
    Built 5 packages out of 11 (All logs)

  • bitserializer/0.10:
    Built 5 packages out of 11 (All logs)


Conan v2 pipeline ✔️

Note: Conan v2 builds are now mandatory. Please read our discussion about it.

All green in build 2 (8e51b7ad9a6b4efcf9bfa7ce77e86349914602f6):

  • bitserializer/0.70:
    Built 4 packages out of 5 (All logs)

  • bitserializer/0.65:
    Built 4 packages out of 5 (All logs)

  • bitserializer/0.50:
    Built 4 packages out of 5 (All logs)

  • bitserializer/0.10:
    Built 4 packages out of 5 (All logs)

  • bitserializer/0.44:
    Built 4 packages out of 5 (All logs)

@AbrilRBS
Copy link
Member

@jrosiek thanks a lot for your PR. Could you try checking if the current changes also solve your issue? Thanks!

@jrosiek
Copy link
Contributor Author

jrosiek commented Oct 15, 2024

Yes, the change fixes the issue on my side. Thanks.

@jcar87
Copy link
Contributor

jcar87 commented Oct 15, 2024

I'm just double checking the very first commit of this recipe that contained the no_copy_source: d4f8bc2

and no context is provided to justify it - it is useful in some cases, but don't think it is necessary here

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants