Missing packages in registry

Hello,

Out build pipeline just started failing because adafruit/Adafruit PN532 @ 1.2.2 is no longer available.

Library Manager: Installing adafruit/Adafruit PN532 @ 1.2.2
UnknownPackageError: Could not find the package with ‘adafruit/Adafruit PN532 @ 1.2.2’ requirements for your system ‘linux_x86_64’

Looking at the versions page (PlatformIO Registry) I no longer see the version there.
I worked around this by getting the library directly from the Github repository.
However, now our pipeline fails with the following error:

Platform Manager: Installing atmelavr @ 4.0.0
UnknownPackageError: Could not find the package with ‘atmelavr @ 4.0.0’ requirements for your system ‘linux_x86_64’

It seems strange that this version is suddenly missing, given that older versions are still available (PlatformIO Registry).

Could it be that there is an issue with the registry?

Thanks in advance,
Marco

Hello,

I’m seeing an similar issue now, issue started appearing around yesterday.

platformio.exe pkg install --global --platform "platformio/teensy@4.13.1"
Platform Manager: Installing platformio/teensy @ 4.13.1
UnknownPackageError: Could not find the package with 'platformio/teensy @ 4.13.1' requirements for your system 'windows_amd64'

And I see a similar pattern as mlout, that the specific release looks like it has disappeared from the Platformio Registry

Is anyone else having these issues?

What was the previous day when you used atmelavr @ 4.0.0/ Adafruit PN532 @ 1.2.2 ? We will investigate our auto-clean mechanism for unused versions for a long period. We have already disabled it while we understand the root of the issue. Sorry.

Meanwhile, please switch to the latest stable version of atmelavr platform. I’m sure it is compatible with your project.

The last time our pipeline downloaded them was February 22 8:56 AM GMT+1.
We cache these packages in our pipeline. Only if we change the platformio.ini (or the cache gets deleted) we download the packages again.

I’d like to point out that the issues I’m having are of the same nature as mlout, but with another platform (“platformio/teensy@4.13.1”), just in case that was not clear in my first post. Perhaps that helps troubleshooting in some way.

Thanks!

I have just succesfully tested a new release of our firmware with the latest versions of all libraries. So for us this issue is less urgent now :slight_smile:

2 Likes

For me it’s still not possible to update at the moment unfortunately.

It really seems like there are missing versions of Teensy platform, comparing the versions found in the registry and the ones found in the Github repo.

Is this difference expected?

Update: Now an additional package failed to be found

Tool Manager: Installing platformio/tool-scons @ ~4.40300.0
Error: Could not find the package with 'platformio/tool-scons @ ~4.40300.0' requirements for your system 'linux_x86_64'
1 Like

Similarly to that I was hit with a

Tool Manager: Installing platformio/tool-scons @ ~4.40400.0
Error: Could not find the package with 'platformio/tool-scons @ ~4.40400.0' requirements for your system 'linux_x86_64'

that caused the CI pipeline to fail. It was using a statically fixed older version of the PlatformIO core in a Docker container though, and updating to the newest core version quickly fixed the error.

1 Like

This kind of behaviour is unexpected from a package repository service, and the early deletion of dependencies like SCons required for PlatformIO core means that older versions of PlatformIO no longer work.

There needs to be a way to archive older versions. For example, with Maven I can use a proxy that maintains a copy of everything that has ever been accessed.

I no longer have any confidence in using the registry for dependencies when arbitrary versions I may have pinned (because the later versions cause problems or have breaking changes) will just disappear.

This is what happens if you’re running v6.1.5 and then change to v6.1.14:

Tool Manager: Installing platformio/tool-scons @ ~4.40700.0
Downloading  [####################################]  100%
Unpacking  [####################################]  100%
Tool Manager: tool-scons@4.40700.0 has been installed!
Tool Manager: Removing tool-scons @ 4.40400.0
Tool Manager: tool-scons@4.40400.0 has been removed!

You then can’t revert back to v6.1.5 for any reason because the previous version will no longer work and your local copy has been deleted.

1 Like

Please open PlatformIO Core CLI and type

pio upgrade

Restart VSCode. Everything should work. It seems you are stuck in the ancient PlatormIO Core version.

Thanks, yes, that fixed the tool-scons issue, but I still have issues with

Could not find the package with 'platformio/teensy @ 4.13.1'

Do you use Arduino/Teensyduino or another framework?

This is from my platformio.ini-file:

platform = teensy@4.13.1
board = teensy41
framework = arduino

Please replace with

platform = teensy@^5.0.0

The latest version includes updated Teensyduino with bug fixes and other imrovements.

Does this mean that I’m not supposed to be able to use 4.13.1?

Also, what is the cleanup policy of older versions in the package registry?

Is Add 8.4.0+2021r2-patch3 back to PlatformIO registry · Issue #42 · espressif/crosstool-NG · GitHub another casualty of this or did Espressif unpublish it?

The complexity of the arduino-esp32 library structure makes it impossible to use a range of versions when making modifications to one part of it.

If you want people to upgrade old dependencies, add warnings to the the build output. Don’t go deleting files that make it impossible for older versions to build.

Good morning, any update on this? As far as I can tell, it still seems like the registry is missing a few of the older versions

This is also happening for a number of Adafruit’s libraries and has completely broken my build process. Adafruit says this is platformio’s problem to solve:

I cannot upgrade to newer versions of these libraries at the moment as I’m busy with normal development.

I shouldn’t have to worry about versions of 3rd party dependencies that STILL EXIST on Github to go missing from the platformio-registry. I don’t care how old or unused they are.

I pin my versions so that I have a stable platform to develop on. When I have time I obviously look to upgrade to newer versions of the 3rd party libraries, but a lot of times there are breaking changes that require time to research.

For the time being I’m getting around this by pointing directly to Github for the source of the dependency:

lib_deps = https://github.com/adafruit/Adafruit_BusIO.git#1.13.2