Clarify difference between gamspy.container.loadRecordsFromGdx() and ...read()

Description of the issue

Hi,

This is just a word on my understanding of two different methods to read a gdx that I want to clarify, and maybe a suggestion to better distinguish the methods in the doc.

After the 1.19.2 release, I noticed I was misusing the gamspy.container.loadRecordsFromGdx method, because it raised an error that didn’t raised before.
I used to use it like gamspy.container.read, with only a container creation before (and no gamspy.Set or gamspy.Parameter declared) :

my_container = gp.Container()
my_container.loadRecordsFromGdx(gdx_path, ["my_data"])

Before 1.19.2 (certainly after 1.18.3), the method accepted it, then I could only “read” a gdx. But after the release, it raised the following error:
gamspy.exceptions.ValidationError: Cannot load records of “my_data” because it does not exist in the container.

So my understanding is that loadRecordsFromGdx is reserved for feeding gamspy.Symbol with records (then it expects its prior declaration), whereas read is more relevant to simply access a gdx or a Container data.

Error message and stack trace

gamspy.exceptions.ValidationError: Cannot load records of “my_data” because it does not exist in the container.

GAMSPy version

GAMSPy version: 1.19.2
GAMS version: 52.3.0
gamspy_base version: 52.3.0

This was an unintended breaking change that we reverted in 1.19.3. You can just upgrade your gamspy installation and it should be working as it was. Sorry for the confusion.

Hello Muhammet, indeed it does work with 1.19.3 !

Thanks