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

Gather informations about dependence libraries version #452

Closed
kelson42 opened this issue Nov 18, 2020 · 10 comments · Fixed by #656
Closed

Gather informations about dependence libraries version #452

kelson42 opened this issue Nov 18, 2020 · 10 comments · Fixed by #656
Assignees
Milestone

Comments

@kelson42
Copy link
Contributor

With our tools (typically zim-tools and kiwix-tools), we need to know which versions of the libzim/libkiwix/... binary runs against.

Therefore. we should be able to deliver the list of librairies we need with there version used for compilation/linking.

The tools, following a similar procedure with their own deps, should be able to print the information with option -v.

@lizfrank
Copy link

lizfrank commented Mar 4, 2021

That's great! It sounds like exactly what we need. Thank you. Do you have any idea when it will be implemented?

@kelson42
Copy link
Contributor Author

kelson42 commented Mar 4, 2021

@lizfrank there is no ETA for now, nobody is foreseen to work on it for the moment.

@pranavich18
Copy link

@kelson42 I would like to work on this can you explain more about the issue.

@kelson42 kelson42 pinned this issue May 7, 2021
@mgautierfr
Copy link
Collaborator

#465 make libzim install the libzim_config.h header with the define LIBZIM_VERSION set.
Depending projects can now use this define to print the libzim version to the user.
(Not sure we should also display information about libzim dependencies (zstd, ...). And it is probably not to the libzim library to handle this)

@kelson42
Copy link
Contributor Author

kelson42 commented Jun 7, 2021

What is asked in the ticket is not delivered yet. We should keep the ticket open or revamp it. We need a method giving the necessary information, so external software can display them.

@kelson42 kelson42 reopened this Jun 7, 2021
@mgautierfr
Copy link
Collaborator

We have a define publicly available. External software can use it to display them.

@kelson42
Copy link
Contributor Author

kelson42 commented Jun 8, 2021

I believe we should have a method delivering this list, otherwise each software will have to handle the whole stack of deps on its own. Which is super annoying.

@mgautierfr
Copy link
Collaborator

I don't think that libzim should export version of other libraries.

@kelson42
Copy link
Contributor Author

kelson42 commented Jun 8, 2021

I don't think that libzim should export version of other libraries.

If we don't do so, we will have:

  • A lot of duplicate in each end-user software
  • Each software developer will have to be aware about the full dependence stack to be able to display it.
  • Each time we add/remove a dependence, or each time the way to retrieve the version in a dependence change, all the softwares will have to be patched

@mgautierfr So why would want to do that if a simply abstraction in libzim/libkiwix would provide this in a normalised manner?

@kelson42 kelson42 added this to the 7.2.0 milestone Nov 28, 2021
@kelson42 kelson42 self-assigned this Dec 28, 2021
@kelson42 kelson42 unpinned this issue Dec 31, 2021
@kelson42 kelson42 modified the milestones: 7.3.0, 7.2.0 Jan 12, 2022
@adigitoleo
Copy link

adigitoleo commented Jan 28, 2022

Alternative idea, possibly complementary: version the ZIM file spec. Track somewhere (changelogs) which versions of libzim/zimwriterfs/etc. are compatible with which ZIM spec version. This is done for other file formats, e.g. hdf5, toml, etc.

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

Successfully merging a pull request may close this issue.

5 participants