pharo-nosql / mongotalk

A Pharo driver for MongoDB
MIT License
19 stars 13 forks source link

Loading error in Pharo 9 #94

Closed tinchodias closed 3 years ago

tinchodias commented 3 years ago

Mongo-Tests-Core requires OSProcess, which signals a loading error.

I introduced the dependency to that project to be able to manipulate mongod processes from the image tests, to support sending signals such as SIGSTOP and SIGCONT. I found it useful for testing automatically the MongoClient in a replica set scenario. It allowed making assertions about the adaptation of the client in scenarios where one or more servers are suddenly disconnected.

It may be a mistake to add this dependency to Mongo-Tests-Core instead of just Mongo-Client-Tests, we can revise this. We could move the dependency to Mongo-Client-Tests so that basic tests are not affected.

Additionally, we can switch from OSProcess to OSSubprocess. AFAIR, the only "disadvantage" is that it doesn't work in Windows. There is a special project for Windows, but of course, may just avoid running tests in this OS...

In the BaselineOfMongoTalk, we load a specific SHA of OSProcess. The reason is that the project has no tags to depend on, and it's not good to depend just in a changing branch (such as master). Firstly, I'd check if the more recent commits just fix the loading error.

tinchodias commented 3 years ago

I spotted a commit where I switched from OSSubprocess to OSProcess: https://github.com/pharo-nosql/mongotalk/commit/e6e65de4f323dd162b217c25d122e704749f9278

The commit comment states the reason:

Use OSProcess instead of OSSubprocess since ImageWorker loads it Why? Both projects are incompatible in the same image so multipel image tests error in Voyage.