Jump to page: 1 2
Thread overview
DScanner 0.12.1 stopped working
Jul 05, 2022
Carsten Schlote
Jul 05, 2022
Paolo Invernizzi
Jul 05, 2022
Carsten Schlote
Jul 05, 2022
RazvanN
Jul 05, 2022
jmh530
Jul 05, 2022
bauss
Jul 05, 2022
Carsten Schlote
Jul 05, 2022
rikki cattermole
Jul 05, 2022
rikki cattermole
Jul 05, 2022
Carsten Schlote
Jul 06, 2022
singingbush
Jul 06, 2022
jmh530
Jul 06, 2022
singingbush
Jul 07, 2022
Guillaume Piolat
July 05, 2022

HI together,

it seems that dscanner started to fail recently, and at work some of our CI pipelines stopped working. I would care less, if this would have happed at home. But at work this opens more questions about the usability of dlang - for whatever purpose. So any help to solve this issue asap would be appreciated.

Error output:

.dub/packages/dscanner-0.12.1/dscanner/src/dscanner/analysis/helpers.d(59,32): Error: none of the overloads of `this` are callable using argument types `(CAllocatorImpl!(Mallocator, Flag.no))`
...

Is there any information available, what is causing this problem and how to fix it?

It happens with the latest versions of DMD and LDC2. Also it breaks with GDC, but GDC is not up to date. It worked before, so I suspect some changes in packages DScanner depends on.

July 05, 2022
On Tuesday, 5 July 2022 at 08:18:49 UTC, Carsten Schlote wrote:
> HI together,
>
> it seems that dscanner started to fail recently, and at work some of our CI pipelines stopped working. I would care less, if this would have happed at home. But at work this opens more questions about the usability of dlang - for whatever purpose. So any help to solve this issue asap would be appreciated.
>
> Error output:
> ```
> .dub/packages/dscanner-0.12.1/dscanner/src/dscanner/analysis/helpers.d(59,32): Error: none of the overloads of `this` are callable using argument types `(CAllocatorImpl!(Mallocator, Flag.no))`
> ...
> ```
>
> Is there any information available, what is causing this problem and how to fix it?
>
> It happens with the latest versions of DMD and LDC2. Also it breaks with GDC, but GDC is not up to date. It worked before, so I suspect some changes in packages DScanner depends on.

Probably is not what you are searching for, but D-Scanner master is building on my machine with this dub.selections.json


   {
	"fileVersion": 1,
	"versions": {
		"dsymbol": "0.13.0",
		"emsi_containers": "0.8.1",
		"inifiled": "1.3.3",
		"libddoc": "0.8.0",
		"libdparse": "0.19.1",
		"stdx-allocator": "2.77.5"
	}
   }

July 05, 2022
On Tuesday, 5 July 2022 at 08:30:29 UTC, Paolo Invernizzi wrote:
> Probably is not what you are searching for, but D-Scanner master is building on my machine with this dub.selections.json
>
>
>    {
> 	"fileVersion": 1,
> 	"versions": {
> 		"dsymbol": "0.13.0",
> 		"emsi_containers": "0.8.1",
> 		"inifiled": "1.3.3",
> 		"libddoc": "0.8.0",
> 		"libdparse": "0.19.1",
> 		"stdx-allocator": "2.77.5"
> 	}
>    }

Thanks alot. Exactly what is needed.

I changed my dub.selection file to your setup, and DScanner nicely compiled. This is, what I had to change:

```
$ diff  dub.selections.json dub.selections.json~
4c4
< 		"dsymbol": "0.13.0",
---
> 		"dsymbol": "0.13.2",
8c8
< 		"libdparse": "0.19.1",
---
> 		"libdparse": "0.19.3",
```
So, either dsymbol or libdparse did some incompatible change, despite the fact that the version number (SemVer?) just bumped the build number, but neither Majaor/Minor numbers.

Later I will work out, which of the two modules is causing the problem. Maybe this helps to track down the reason for this problem.

July 05, 2022
On Tuesday, 5 July 2022 at 09:53:29 UTC, Carsten Schlote wrote:
> On Tuesday, 5 July 2022 at 08:30:29 UTC, Paolo Invernizzi wrote:
>>    [...]
>
> Thanks alot. Exactly what is needed.
>
> I changed my dub.selection file to your setup, and DScanner nicely compiled. This is, what I had to change:
>
> ```
> $ diff  dub.selections.json dub.selections.json~
> 4c4
> < 		"dsymbol": "0.13.0",
> ---
>> [...]
> 8c8
> < 		"libdparse": "0.19.1",
> ---
>> [...]
> ```
> So, either dsymbol or libdparse did some incompatible change, despite the fact that the version number (SemVer?) just bumped the build number, but neither Majaor/Minor numbers.
>
> Later I will work out, which of the two modules is causing the problem. Maybe this helps to track down the reason for this problem.

It's probably libdparse since dsymbol depends on it. It's probably this PR that did it: https://github.com/dlang-community/libdparse/pull/463
July 05, 2022
On Tuesday, 5 July 2022 at 09:53:29 UTC, Carsten Schlote wrote:
>
> Later I will work out, which of the two modules is causing the problem. Maybe this helps to track down the reason for this problem.

Both. dsymbol is a part of libdparse.
July 05, 2022
On Tuesday, 5 July 2022 at 12:09:39 UTC, bauss wrote:
> On Tuesday, 5 July 2022 at 09:53:29 UTC, Carsten Schlote wrote:
>>
>> Later I will work out, which of the two modules is causing the problem. Maybe this helps to track down the reason for this problem.
>
> Both. dsymbol is a part of libdparse.

So the question should be, why a breaking change slipped into mainline. At least it is impossible to build the dub package now with any of the current compilers.

Maybe the CI pipeline should also build with the latest dependancies. OR put the dub.selections file under revision control, so that code like

dub fetch dscanner
dub run dscanner -- ...

will properly compile and work. Without breaking the build....
July 05, 2022

On 7/5/22 8:09 AM, RazvanN wrote:

>

On Tuesday, 5 July 2022 at 09:53:29 UTC, Carsten Schlote wrote:

>

On Tuesday, 5 July 2022 at 08:30:29 UTC, Paolo Invernizzi wrote:

>

   [...]

Thanks alot. Exactly what is needed.

I changed my dub.selection file to your setup, and DScanner nicely compiled. This is, what I had to change:

$ diff  dub.selections.json dub.selections.json~
4c4
<         "dsymbol": "0.13.0",
---
> [...]
8c8
<         "libdparse": "0.19.1",
---
> [...]

So, either dsymbol or libdparse did some incompatible change, despite the fact that the version number (SemVer?) just bumped the build number, but neither Majaor/Minor numbers.

Later I will work out, which of the two modules is causing the problem. Maybe this helps to track down the reason for this problem.

It's probably libdparse since dsymbol depends on it. It's probably this PR that did it: https://github.com/dlang-community/libdparse/pull/463

The problem is that dscanner uses stdx.allocator, but libdparse was switched to using std.experimental.allocator in that PR.

The result is that you can't pass an allocator from one lib to the other, because they are from different modules.

There is a way to fix this: change libdparse to use stdx.allocator when some other project has included it (this can be done with an optional dependency specification).

-Steve

July 05, 2022

On Tuesday, 5 July 2022 at 15:22:57 UTC, Steven Schveighoffer wrote:

>

[snip]
There is a way to fix this: change libdparse to use stdx.allocator when some other project has included it (this can be done with an optional dependency specification).

-Steve

Or finalize and then merge std.experimental.allocator...

July 06, 2022
On 06/07/2022 12:56 AM, Carsten Schlote wrote:
> So the question should be, why a breaking change slipped into mainline. At least it is impossible to build the dub package now with any of the current compilers.

What happened is that WebFreak created the tag v0.19.3 which is automatically upgraded to. Rather than v0.20.0 which wouldn't have been.
July 05, 2022

On 7/5/22 1:30 PM, rikki cattermole wrote:

>

On 06/07/2022 12:56 AM, Carsten Schlote wrote:

>

So the question should be, why a breaking change slipped into mainline. At least it is impossible to build the dub package now with any of the current compilers.

What happened is that WebFreak created the tag v0.19.3 which is automatically upgraded to. Rather than v0.20.0 which wouldn't have been.

Nope.

https://github.com/dlang-community/D-Scanner/blob/e639f8bcbe8a73c9ebefb445edc101ec0c2731c1/dub.json#L15

-Steve

« First   ‹ Prev
1 2