metanorma / pubid-cen

CEN/CENELEC Publication Identifiers
BSD 2-Clause "Simplified" License
1 stars 0 forks source link

Dependencies between gems unusable #19

Closed opoudjis closed 8 months ago

opoudjis commented 11 months ago

The dependencies tree between pubid gems is making them unusable. Right now:

This means it is impossible for me to do anything with the pubid-iec PR, without recompiling and removing the dependencies for pubid-iso, pubid-cen, and relaton-iso

Releases need to be anchored to a single gem's versions, which is updated whenever a pubid version is updated; this is what the relaton stack does with relaton-cli. Any major version updates are ONLY exposed to the outside world through relaton-cli, and whenever there is a minor version update in a child relaton gem, the minor version of relaton-cli is updated as well.

This may be the intent behind pubid-core, but it is not clear to me that this is happening; and @andrew2net and I are using pubid-core 1.8, which was last updated start of October: we have no idea about the updates to pubid-core since.

So you need to:

(a) notify us when a minor version of pubid-core changes, so that both of us can update our dependencies (b) ensure that minor versions of pubid-* are synchronised with pubid-core, if they are not already

ronaldtse commented 11 months ago

@mico we must ensure that the whole pubid stack is useable and synchronized at once. We do need a way of ensuring this; so we should have some pubid gem, eg “pubid” that requires all pubid-* flavors.

andrew2net commented 10 months ago

I don't think we need to have pubid gem that requires all the pubid-* gems. I need to test Relaton flavor gems with new Pubid versions, so I need to be able to manage the Pubid dependencies in each Relaton flavor gem separately. I think using same major and minor version for all the Pubid gems will make updating gems more clear. We already use such version numeration in Relaton gems. @mico it seems that paid-core is the root gem for all Pubid gems. Let's use same major and minor version as the pubid-core has, for all Pubid gems.

mico commented 8 months ago

@opoudjis did we solve the problem by introducing https://github.com/metanorma/pubid ?

ronaldtse commented 8 months ago

@andrew2net we need the all-encompassing pubid gem because we need a single place to lock versions for Metanorma. Both Metanorma and Relaton uses the pubid-* gems in different ways.

opoudjis commented 8 months ago

I am switching to pubid. @andrew2net I would rather you do the same, so that we avoid clashes.

opoudjis commented 8 months ago

Closing for now...

andrew2net commented 7 months ago

@opoudjis Relaton can't use pubid right now. There are many IDs that pubid unable to parse. Only relaton-iso uses pubid-iso at this time.

opoudjis commented 7 months ago

@andrew2net OK, but could you at least set your gemspec to use pubid instead of pubid-iso? pubid includes pubid-iso, so you can still require pubid-iso on its own; and if you include it, you prevent our gems falling out of sync.

ronaldtse commented 7 months ago

@andrew2net can you please help apply pubid one by one into Relaton? We need to make sure pubid works...

andrew2net commented 7 months ago

@ronaldtse Artur started applying pubid into Relaton. I'll help him and review the code.