Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Markdown linting: Convert emphasis to headings #5342

Merged
merged 19 commits into from
Oct 25, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
19 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 3 additions & 11 deletions docs/articles/clustering/cluster-client.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,17 +29,9 @@ Both the `ClusterClient` and the `ClusterClientReceptionist` emit events that ca

The `ClusterClientReceptionist` sends out notifications in relation to having received contact from a `ClusterClient`. This notification enables the server containing the receptionist to become aware of what clients are connected.

**1. ClusterClient.Send**

The message will be delivered to one recipient with a matching path, if any such exists. If several entries match the path the message will be delivered to one random destination. The `Sender` of the message can specify that local affinity is preferred, i.e. the message is sent to an actor in the same local actor system as the used receptionist actor, if any such exists, otherwise random to any other matching entry.

**2. ClusterClient.SendToAll**

The message will be delivered to all recipients with a matching path.

**3. ClusterClient.Publish**

The message will be delivered to all recipients Actors that have been registered as subscribers to the named topic.
1. `ClusterClient.Send`: The message will be delivered to one recipient with a matching path, if any such exists. If several entries match the path the message will be delivered to one random destination. The `Sender` of the message can specify that local affinity is preferred, i.e. the message is sent to an actor in the same local actor system as the used receptionist actor, if any such exists, otherwise random to any other matching entry.
1. `ClusterClient.SendToAll`: The message will be delivered to all recipients with a matching path.
1. `ClusterClient.Publish`: The message will be delivered to all recipients Actors that have been registered as subscribers to the named topic.

Response messages from the destination actor are tunneled via the receptionist to avoid inbound connections from other cluster nodes to the client, i.e. the `Sender`, as seen by the destination actor, is not the client itself. The `Sender` of the response messages, as seen by the client, is deadLetters since the client should normally send subsequent messages via the `ClusterClient`. It is possible to pass the original sender inside the reply messages if the client is supposed to communicate directly to the actor in the cluster.

Expand Down
2 changes: 1 addition & 1 deletion docs/articles/concepts/configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ When an actor is instantiated within the `ActorSystem` it can be deployed in one

When an actor is deployed by the `ActorSystem`, it has a range of configuration settings. These settings control a wide range of behavior options for the actor such as: is this actor going to be a router? What `Dispatcher` will it use? What type of mailbox will it have? (More on these concepts in later lessons.)

We haven't gone over what all these options mean, but *the key thing to know for now is that the settings used by the `ActorSystem` to deploy an actor into service can be set within HOCON.*
We haven't gone over what all these options mean, but **the key thing to know for now is that the settings used by the `ActorSystem` to deploy an actor into service can be set within HOCON.**

***This also means that you can change the behavior of actors dramatically (by changing these settings) without having to actually touch the actor code itself.***

Expand Down
10 changes: 4 additions & 6 deletions docs/articles/persistence/persistence-query.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,9 +50,7 @@ Akka persistence query comes with a number of query interfaces built in and sugg
> [!NOTE]
> Refer to the documentation of the ReadJournal plugin you are using for a specific list of supported query types. For example, Journal plugins should document their stream completion strategies.

The predefined queries are:

**AllPersistenceIdsQuery (PersistentIds) and CurrentPersistenceIdsQuery**
#### `AllPersistenceIdsQuery (PersistentIds)` and `CurrentPersistenceIdsQuery`.

`AllPersistenceIds` or `PersistenceIds`, and `CurrentPersistenceIds` in `IPersistenceIdsQuery` is used for retrieving all persistenceIds of all persistent actors.

Expand All @@ -72,7 +70,7 @@ Periodic polling of new `PersistenceIds` are done on the query side by retrievin

The stream is completed with failure if there is a failure in executing the query in the backend journal.

**EventsByPersistenceIdQuery and CurrentEventsByPersistenceIdQuery**
#### `EventsByPersistenceIdQuery` and `CurrentEventsByPersistenceIdQuery`

`EventsByPersistenceId` is used for retrieving events for a specific `PersistentActor` identified by `PersistenceId`.

Expand All @@ -95,7 +93,7 @@ The write journal is notifying the query side as soon as events are persisted, b

The stream is completed with failure if there is a failure in executing the query in the backend journal.

**EventsByTag and CurrentEventsByTag**
#### `EventsByTag` and `CurrentEventsByTag`

`EventsByTag` allows querying events regardless of which `PersistenceId` they are associated with. This query is hard to implement in some journals or may need some additional preparation of the used data store to be executed efficiently. The goal of this query is to allow querying for all events which are "tagged" with a specific tag. That includes the use case to query all domain events of an Aggregate Root type. Please refer to your read journal plugin's documentation to find out if and how it is supported.

Expand Down Expand Up @@ -160,7 +158,7 @@ As you can see, we can use all the usual stream combinators available from Akka

If your usage does not require a live stream, you can use the `CurrentEventsByTag` query.

**AllEvents and CurrentAllEvents**
#### `AllEvents` and `CurrentAllEvents`

`AllEvents` allows replaying and monitoring all events regardless of which `PersistenceId` they are associated with. The goal of this query is to allow replaying and monitoring for all events that are stored inside a journal, regardless of its source.Please refer to your read journal plugin's documentation to find out if and how it is supported.

Expand Down
6 changes: 3 additions & 3 deletions docs/articles/remoting/deployment.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ That's right - we can *deploy code over the network* with Akka.Remote.

Here's what that concept looks like expressed as Akka.NET code:

**Shared Actor / Message Code**
### Shared Actor / Message Code

```csharp
/*
Expand Down Expand Up @@ -52,7 +52,7 @@ public class Hello

```

**DeployTarget (process that gets deployed onto)**
### DeployTarget (process that gets deployed onto)

```csharp
class Program
Expand All @@ -76,7 +76,7 @@ class Program
}
```

**Deployer (process that does deploying)**
### Deployer (process that does deploying)

```csharp
class Program
Expand Down
4 changes: 2 additions & 2 deletions docs/articles/remoting/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ So in the case of our previous example, `localhost:8080` is the inbound (listeni

So imagine we have the following two actor systems configured to both use the `dot-netty.tcp` Akka.Remote transport:

**Client**
### Client

```xml
akka {
Expand All @@ -140,7 +140,7 @@ akka {
}
```

**Server**
### Server

```xml
akka {
Expand Down
3 changes: 2 additions & 1 deletion docs/articles/streams/custom-stream-processing.md
Original file line number Diff line number Diff line change
Expand Up @@ -601,7 +601,8 @@ class FirstValue<T> : GraphStageWithMaterializedValue<FlowShape<T, T>, Task<T>>

## Using attributes to affect the behavior of a stage

**This section is a stub and will be extended in the next release**
> [!NOTE]
> This section is a stub and will be extended in the next release.

Stages can access the `Attributes` object created by the materializer. This contains all the applied (inherited) attributes applying to the stage, ordered from least specific (outermost) towards the most specific (innermost) attribute. It is the responsibility of the stage to decide how to reconcile this inheritance chain to a final effective decision.

Expand Down
10 changes: 5 additions & 5 deletions docs/community/building-akka-net.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,15 @@ Akka.NET's build system is a modified version of [Petabridge's `dotnet new` temp

## Supported Commands

This project supports a wide variety of commands, all of which can be listed via:
This project supports a wide variety of commands.

**Windows**
To list on Windows:

```console
C:\> build.cmd help
```

**Linux / OS X**
To list on Linux / OS X:

```console
build.sh help
Expand Down Expand Up @@ -56,7 +56,7 @@ This option will work locally on Linux or Windows.

This project will automatically populate its release notes in all of its modules via the entries written inside [`RELEASE_NOTES.md`](RELEASE_NOTES.md) and will automatically update the versions of all assemblies and NuGet packages via the metadata included inside [`common.props`](src/common.props).

**RELEASE_NOTES.md**
#### RELEASE_NOTES.md

```text
#### 0.1.0 October 05 2019 ####
Expand All @@ -65,7 +65,7 @@ First release

In this instance, the NuGet and assembly version will be `0.1.0` based on what's available at the top of the `RELEASE_NOTES.md` file.

**RELEASE_NOTES.md**
#### RELEASE_NOTES.md

```text
#### 0.1.0-beta1 October 05 2019 ####
Expand Down
4 changes: 2 additions & 2 deletions docs/community/online-resources.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ title: Resources

## Blog posts

**Petabridge**
### Petabridge

- [Akka.NET: What is an Actor?](https://petabridge.com/blog/akkadotnet-what-is-an-actor/) (Aaron Stannard on January 25, 2015)
- [How to Do Asynchronous I/O with Akka.NET Actors Using PipeTo](https://petabridge.com/blog/akkadotnet-async-actors-using-pipeto/) (Aaron Stannard on January 27, 2015)
Expand Down Expand Up @@ -41,7 +41,7 @@ title: Resources
- [Introduction to Distributed Publish-Subscribe in Akka.NET](https://petabridge.com/blog/distributed-pub-sub-intro-akkadotnet/) (Bartosz Sypytkowski on February 14, 2017)
- [Introducing Petabridge.Cmd - a Command-line Management Tool for Akka.NET Applications](https://petabridge.com/blog/petabridgecmd-release/) (Aaron Stannard on June 7, 2017)

**Others**
### Others

- [Deploying actors with Akka.NET](https://rogeralsing.com/2014/03/09/deploying-actors-with-akka-net/) (Roger Johansson on March 9, 2014)
- [FSharp and Akka.net - the functional way](http://bartoszsypytkowski.com/fsharp-and-akka-net-the-functional-way/) (Bartosz Sypytkowski on July 5th, 2014)
Expand Down