Skip to content

modularisation FileSystem#19568

Open
NathanMalenge wants to merge 31 commits intopharo-project:Pharo14from
NathanMalenge:FileSystem
Open

modularisation FileSystem#19568
NathanMalenge wants to merge 31 commits intopharo-project:Pharo14from
NathanMalenge:FileSystem

Conversation

@NathanMalenge
Copy link
Copy Markdown
Collaborator

Added FileSystem in the jenkinsFile

group: 'Tests' with: { 'FileSystem-Core-Tests'. 'FileSystem-Disk-Tests'. 'FileSystem-Tests-Attributes' } ]
group: 'Core' with: { 'FFI-Kernel'. 'FileSystem-Path'. 'FileSystem-Core'. 'FileSystem-Disk'. 'System-Sources-Files'};
group: 'Tests' with: { 'FileSystem-Core-Tests'. 'FileSystem-Disk-Tests'. 'FileSystem-Tests-Attributes' } ;
group: 'TestsWithFFI' with: #('Tests' 'UnifiedFFI').]
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Instead of a different group, we should say that FileSystem-Core-Tests depends on UnifiedFFI, right?

@guillep
Copy link
Copy Markdown
Member

guillep commented Apr 17, 2026

Looks like BaselineOfUnifiedFFI misses a dependency to OSPlatforms!! :}

@NathanMalenge
Copy link
Copy Markdown
Collaborator Author

I’ll check that on monday, thx for the guidance @guillep

@MarcusDenker
Copy link
Copy Markdown
Member

Something I think is wrong with the FFI loading

DeleteVisitorTest testSymbolicLink

  • it uses FFICalloutMethodBuilder
  • but should use I think TFCalloutMethodBuilder, which is part of threaded FFI?
Error Details 
FFICalloutMethodBuilder had the subclass responsibility to implement #createFFICalloutLiteralFromSpec:
Stack Trace 

SubclassResponsibility
FFICalloutMethodBuilder had the subclass responsibility to implement #createFFICalloutLiteralFromSpec:
FFICalloutMethodBuilder(Object)>>subclassResponsibility
FFICalloutMethodBuilder>>createFFICalloutLiteralFromSpec:
FFICalloutMethodBuilder>>generateFFICallout:spec:ffiLibrary:
[ ] in FFICalloutMethodBuilder>>generateMethodFromSpec:
OCIRBuilder class>>buildIR:
FFICalloutMethodBuilder>>generateMethodFromSpec:
FFICalloutMethodBuilder>>generate
FFICalloutMethodBuilder>>build:
FFICalloutAPI>>function:library:
FFICalloutAPI>>function:module:
LibC(FFILibrary)>>ffiCall:
LibC>>system:
[ ] in DeleteVisitorTest>>testSymbolicLink
FullBlockClosure(BlockClosure)>>ensure:
DeleteVisitorTest>>testSymbolicLink
DeleteVisitorTest(TestCase)>>performTest

@NathanMalenge
Copy link
Copy Markdown
Collaborator Author

NathanMalenge commented Apr 21, 2026

The ThreadedFFI backend is indeed missing, I already tried and add it.

The issue is that if I include ThreadedFFI in the dependencies, the strict CI completely crashes during the loading phase due to an undeclared variable warning.

MetacelloNotification: Loaded -> BaselineOfFileSystem --- unresolved (63 milliseconds)
MetacelloNotification: Loading baseline of BaselineOfFileSystem...
MetacelloNotification: Project: UnifiedFFI
MetacelloNotification: Loaded -> BaselineOfUnifiedFFI --- unresolved (50 milliseconds)
MetacelloNotification: Project: ThreadedFFI
MetacelloNotification: Loaded -> BaselineOfThreadedFFI --- unresolved (52 milliseconds)
MetacelloNotification: Loaded -> System-Platforms --- tonel:///builds/workspace/est_and_branch_Pipeline_PR-19568/Tests-ISO-FileSystem/../src() (90 milliseconds)
MetacelloNotification: Loaded -> System-OSEnvironments --- tonel:///builds/workspace/est_and_branch_Pipeline_PR-19568/Tests-ISO-FileSystem/../src() (113 milliseconds)
MetacelloNotification: Loaded -> UnifiedFFI --- tonel:///builds/workspace/est_and_branch_Pipeline_PR-19568/Tests-ISO-FileSystem/../src() (1 second 254 milliseconds)
OCCodeError:OCUndeclaredVariableNotice TFFIBackend>>#calloutAPIClass 21:Undeclared variable named TFCalloutAPI in calloutAPIClass->TFCalloutAPI
OCUndeclaredVariableNotice(OCNotice)>>signalError

commit number: 5276c39
You can see those results by checking the 23rd trial.
https://ci.inria.fr/pharo-ci-jenkins2/job/Test%20pending%20pull%20request%20and%20branch%20Pipeline/job/PR-19568/23/pipeline-overview/?selected-node=146

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants