These are chat archives for akkadotnet/akka.net

27th
Apr 2018
Aaron Stannard
@Aaronontheweb
Apr 27 2018 00:50
Context.System.EventStream.Subscribe
@OnurGumus didn't I point you towards the smbsrc feed earlier?
Onur Gumus
@OnurGumus
Apr 27 2018 06:46
@Aaronontheweb there are no symbols in nugget symbol server.
Peter Shrosbree
@pshrosbree
Apr 27 2018 15:11
@OnurGumus ^
Aaron Stannard
@Aaronontheweb
Apr 27 2018 15:30
weiiiiiiird
let me check our build logs rq
[23:00:24]    [PublishNuget] Pushing D:\work\86e8e7aa463877c0\bin\nuget\Akka.1.3.6.nupkg Attempts left: 3
[23:00:25]    [PublishNuget] Pushing Akka.1.3.6.nupkg to 'https://www.nuget.org/api/v2/package'...
[23:00:25]    [PublishNuget]   PUT https://www.nuget.org/api/v2/package/
[23:00:26]    [PublishNuget]   Created https://www.nuget.org/api/v2/package/ 1530ms
[23:00:26]    [PublishNuget] Your package was pushed.
[23:00:26]    [PublishNuget] Pushing Akka.1.3.6.symbols.nupkg to the symbol server (https://nuget.smbsrc.net/)...
[23:00:26]    [PublishNuget]   POST https://www.nuget.org/api/v2/package/create-verification-key/Akka/1.3.6
[23:00:27]    [PublishNuget]   OK https://www.nuget.org/api/v2/package/create-verification-key/Akka/1.3.6 255ms
[23:00:27]    [PublishNuget]   PUT https://nuget.smbsrc.net/api/v2/package/
[23:00:30]    [PublishNuget]   OK https://nuget.smbsrc.net/api/v2/package/ 3165ms
[23:00:30]    [PublishNuget] Your package was pushed.
sure looks like our symbols made it up to nuget.smbsrc.net
on the off-chance our build artifacts are fucked up
let me check those too
nope, the PDBs et al are in there
so yeah, not sure why you're not seeing them @OnurGumus
but you can take @pshrosbree's advice and use our nightly symbol feed
which sounds like it does work
Ryan Anthony
@ryandanthony_twitter
Apr 27 2018 15:49
ok I feel like i am really missing something about how to use
 Source.ActorRef
how do I pass in the actor ref?
with
Sink.ActorRefWithAck
it is the first parameter.
for an example
you have to materialize the IActorRef out of the compiled graph
and each time you tell that IActorRef a message
it'll drive the stream
Ryan Anthony
@ryandanthony_twitter
Apr 27 2018 15:50
k
ill dig
Aaron Stannard
@Aaronontheweb
Apr 27 2018 15:51
var source = Source.ActorRef<CrawlDocument>(5000, OverflowStrategy.DropTail);

           var graph = GraphDsl.Create(source, (builder, s) =>
            {
                // html flows
                var downloadHtmlFlow = builder.Add(htmlFlow);
                var downloadBroadcast = builder.Add(new Broadcast<DownloadHtmlResult>(2));
                var completedDownload = builder.Add(DownloadFlow.ProcessCompletedHtmlDownload());
                var parseCompletedDownload = builder.Add(ParseFlow.GetParseFlow(Job));
                var htmlSink = builder.Add(selfHtmlSink);
                var docSink = builder.Add(selfDocSink);
                builder.From(downloadHtmlFlow).To(downloadBroadcast);
                builder.From(downloadBroadcast.Out(0)).To(completedDownload.Inlet);
                builder.From(downloadBroadcast.Out(1)).To(parseCompletedDownload.Inlet);
                builder.From(parseCompletedDownload).To(htmlSink);
                builder.From(completedDownload).To(docSink);

                // image flows
                var imgSink = builder.Add(selfImgSink);
                var downloadImageFlow = builder.Add(imageFlow);
                builder.From(downloadImageFlow).To(imgSink);

                var sourceBroadcast = builder.Add(new Broadcast<CrawlDocument>(2));
                builder.From(sourceBroadcast.Out(0)).To(downloadImageFlow.Inlet);
                builder.From(sourceBroadcast.Out(1)).To(downloadHtmlFlow.Inlet);

                builder.From(s.Outlet).To(sourceBroadcast.In);

                return ClosedShape.Instance;
            });

            SourceActor = Context.Materializer().Materialize(graph);
so ignore what all of the other stages there are doing for a moment
I create the source
I pass in the source using one of the GraphDsl.Create overloads
that tells the graph what it can be materialized into
Ryan Anthony
@ryandanthony_twitter
Apr 27 2018 15:52
k
Aaron Stannard
@Aaronontheweb
Apr 27 2018 15:52
some graphs can be materialized into Task instances
others can be materialized into things like queues
but Source.ActorRef can be materialized into IActorRef
after I wire up the graph and connect everything
Ryan Anthony
@ryandanthony_twitter
Apr 27 2018 15:52
k
Aaron Stannard
@Aaronontheweb
Apr 27 2018 15:52
that call on the last line gives me what I want
Ryan Anthony
@ryandanthony_twitter
Apr 27 2018 15:53
k
attempting :)
Marc Piechura
@marcpiechura
Apr 27 2018 16:19
Note you don’t need to use the GraphBuilder if you have a simple linear stream, maybe easier to start with ;-)
Ryan Anthony
@ryandanthony_twitter
Apr 27 2018 16:19
k
I managed to get it to work, but if the code can be simpler, I am all ears
Ryan Anthony
@ryandanthony_twitter
Apr 27 2018 16:56
@marcpiechura thanks for the pointer, that is much cleaner for 1:1
Aaron Stannard
@Aaronontheweb
Apr 27 2018 17:00
yeah good advice @marcpiechura
Onur Gumus
@OnurGumus
Apr 27 2018 19:59
@Aaronontheweb I have added nugget as symbol source to vs. The when I try to load symbols it can't find any.
My get binaries are different i don't want to use it.
Aaron Stannard
@Aaronontheweb
Apr 27 2018 21:53
I'm not sure how to help you then
might want to open a support ticket with NuGet
because we really do publish the packages there
I can see the confirm responses in our build system