Library update not publishing

I have been trying to publish a new version of my library, but something seems to have gone wrong.

I added a new release (1.1.8) to the repository in GitHub and waited.
After 24 hours the logs from the Library Manager indexer had not updated so I assumed I had done something wrong.
https://downloads.arduino.cc/libraries/logs/github.com/flash62au/WiThrottleProtocol/

Turns out that it had done something and the 1.1.8 release was available, even though the log was never updated.

Unfortunately I did not realise that, and deleted the release and recreated it.
I also ended up creating a 1.1.9 release to fix some issues I found with the original 1.1.8.
24 hours later and a) the log has still not updated from 48 hours ago, and b) the 1.1.9 release is not available for download, though the original 1.1.8 version still is (and I assume that will remain)

I have added the lint check to GitHub and it is only giving me the warning about the name being too long. (too late to fix now)

Github: GitHub - flash62au/WiThrottleProtocol: Arduino sketch to support JMRI's WiThrottle network protocol

Any thoughts as:
a) why the log is not updating?
b) how I can publish 1.1.9?

Thanks
Peter

Hi @flash62au.

Problem

The problem is shown here in the "WiThrottleProtocol" library's dedicated indexer logs web page:

2024/02/21 02:30:25 Checking out tag: v1.1.9
2024/02/21 02:30:25 Release WiThrottleProtocol:1.1.8 already loaded, skipping

Unfortunately, the logs don't communicate about this particular thing very well, but what this tells us is that the version value in the library.properties metadata file was not updated before creating the v1.1.9 tag (note that the indexer checked out tag v1.1.9, only to find the release version was 1.1.8).

You can see it here:

Even though Git tags are the unit of release for the Arduino Library Manager, all versioning is done according to the version field of the library.properties file.

For this reason, the indexer will reject any tag that has the same value in its version field as a release already in the index.

Solution

The solution is to make another release of the library which meets the requirements:

  1. Update the version value in library.properties to the version that will be used for the new release.
  2. Create a new release or tag in the library repository.

The indexer system will pick up that new release and it will be available from Library Manager within a day.

The non-compliant release will still be missing, but since the newer release will be available, that is no problem.

Please let me know if you have any questions or concerns.
Regards, Per

Very cool!

Even though the arduino/arduino-lint-action GitHub Actions action isn't capable of detecting this specific problem, it can help to prevent the introduction of other problems that would either cause your releases to be rejected by the Library Manager system, or else to cause a poor experience for the library users. So I think it will be worth the effort you invested in setting that infrastructure up for your library in the long term anyway.

1 Like

Thanks
silly mistake on my part.

I am still confused as to why the log I am looking at has not updated, but clearly you are looking at a log that has.

https://downloads.arduino.cc/libraries/logs/github.com/flash62au/WiThrottleProtocol/
Currently shows...

2024/02/19 08:30:02 Release WiThrottleProtocol:1.1.6 already loaded, skipping
2024/02/19 08:30:02 Arduino Lint has suggestions for possible improvements:
Click to expand Arduino Lint report

2024/02/19 08:30:02 Checking out tag: v1.1.7
2024/02/19 08:30:02 Release WiThrottleProtocol:1.1.7 already loaded, skipping
2024/02/19 08:30:02 Arduino Lint has suggestions for possible improvements:
Click to expand Arduino Lint report```
type or paste code here

CTRL+F5 and even using a different browser does not change it.

Peter

I looked on a different PC using a VPN, and it shows the updated page.
Not sure why it is cached on my normal PC

thanks
Peter

You are welcome. I'm glad if I was able to be of assistance.

I don't have any explanation for the outdated logs (I'm not very knowledgeable about web stuff). You can try doing a "hard reload" of the page to see if that will get you the current content.

I experienced the same Issue. I am not sure what i did but I cleared the cache and I went on a VPN and then disconnected from it and it worked. However, I sent it to my teacher (on his computer) and he had the same problem as me. It is definitely a problem with the server.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.