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

typo and grammar scrub #1296

Merged
merged 4 commits into from
May 14, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ We have several types of automated testing:

Please make sure to add or update the relevant tests for your changes. Testing
plugins is difficult because they are often mostly integration code that has to
communicate with a external services. We accept any level of testing on plugins
communicate with external services. We accept any level of testing on plugins
as long as it is fast and delegate any plugin bugs to plugin authors.

## Commits
Expand Down
4 changes: 2 additions & 2 deletions docs/actnow.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Static Actions
While Shesmu is mostly about the olives, it _does_ runs actions and it can be
While Shesmu is mostly about the olives, it _does_ run actions and it can be

Choose a reason for hiding this comment

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

might be nitpicky, but maybe "While Shesmu is mostly about olives" vs "While Shesmu is mostly about the olives"

convenient to do that directly. These can be actions generated manually or
using the olive simulator.

Expand All @@ -15,7 +15,7 @@ _Actions_ page can find all actions from that file.

Files can contain different kinds of actions.

The actions in the file are fixed. If they need to be updated in anyway, the
The actions in the file are fixed. If they need to be updated in any way, the
file can be replaced or edited to include new actions, but Shesmu will never
modify the file.

Expand Down
2 changes: 1 addition & 1 deletion docs/algebraicguide.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ Languages that use algebraic data types, including Scala and Rust, typically att

Elsewhere in the Rust program, `Foo::Something(some_string)` can be used to
create a new value. For Shesmu, the same approach is taken where the different
members in a algebraic type have names to help sort them out.
members in an algebraic type have names to help sort them out.

In many languages, including Java, types have a particular name that defines
them. For instance, if we create these two classes:
Expand Down
2 changes: 1 addition & 1 deletion docs/ask-your-doctor.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ previously run.

Although action was _run a workflow_ in our original conception, it has
expanded beyond that. We have action that include _Open a JIRA ticket_. If this
action is rerun, it doesn't always open a new ticket; it checks that JIRA has a
action is rerun, it doesn't always open a new ticket; it checks that JIRA has an
open ticket that matches certain criteria. Similarly, _run a workflow_ doesn't
necessarily run a workflow; it checks the metadatabase to check if a workflow
with matching parameters has been run.
Expand Down
2 changes: 1 addition & 1 deletion docs/builtin.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ These functions are available on any instance:
- `std::date::to_seconds`: get the number of seconds since the UNIX epoch for this date.
- `std::float::is_infinite`: check if a floating-point number is infinite.
- `std::float::is_nan`: check if a floating-point number is not-a-number.
- `std::float::parse` Convert a string containing digits and a decimal point into an float.
- `std::float::parse` Convert a string containing digits and a decimal point into a float.
- `std::integer::parse` Convert a string containing digits into an integer.
- `std::json::array_from_dict`: convert a dictionary to an array of arrays. If a dictionary has strings for keys, it will normally be encoded as a JSON object. For other key types, it will be encoded as a JSON array of two element arrays. This function forces conversion of a dictionary with string keys to the array-of-arrays JSON encoding. Shesmu will be able to convert either back to dictionary.
- `std::json::object`: create a JSON object from fields.
Expand Down
4 changes: 2 additions & 2 deletions docs/compiler-hacking.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Understanding the Shemsu compiler
# Understanding the Shesmu compiler
This is a guide to understanding the Shesmu olive compiler. This is meant to
explain the core components that get the language to Java bytecode.

Expand Down Expand Up @@ -290,7 +290,7 @@ This is the end of the example olive bytecode.

## Olive Design and Lambdas
Every clause in an olive generates additional calls to methods in Java's
`Stream` or methods in Shemu's `RuntimeSupport` to manipulate the stream. Those
`Stream` or methods in Shesmu's `RuntimeSupport` to manipulate the stream. Those
methods take parameters: some of which are simple values; others are method
references/lambdas.

Expand Down
8 changes: 4 additions & 4 deletions docs/faq.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@ This is intended for olive developers and operators.
## It's gone haywire!!!
On the main status page, hit the _STOP ALL ACTIONS_ button. Also, that's not a question.

## I don't see the alert on Shemu's Alerts page. What gives?
## I don't see the alert on Shesmu's Alerts page. What gives?
Shesmu, like most of other programs, feeds data into [Prometheus](https://prometheus.io/docs/introduction/overview/) and Prometheus sends alerts to AlertManager when the application is behaving badly. Shesmu also has `Alert` olives that create alerts about data in the system and send these directly to AlertManager. Only these data alerts will be displayed on the Shesmu _Alerts_ page.

## What going on with these actions?
## What is going on with these actions?
Go to the Shesmu instance of interest, click on the _Actions_ tab. Here, you can find all the actions the server is trying to perform. If you click on the Stats button, you'll get some tables about the actions:

- counts for each action state (failed, succeeded, ...)
Expand All @@ -32,7 +32,7 @@ If you've changed the olive/LIMS/run blacklist/whatever to exclude this action,
Have at look at the _Last Generated_ by an _Olive_ age. If this is over 2 hours, you can be very confident the olive is no longer creating this action

## I changed my olive but the actions are the same. What gives?
Every time an olive runs, all the actions are generated and go into Shemu's scheduler. When the olive runs again, it regenerates all those actions and Shesmu needs to decide if two actions are the same. Actions get to decide if two actiosn are equivalent and that may not include all parameters. If you look at the actions, it will list the olives that generated and you will see two version of the same source file.
Every time an olive runs, all the actions are generated and go into Shesmu's scheduler. When the olive runs again, it regenerates all those actions and Shesmu needs to decide if two actions are the same. Actions get to decide if two actions are equivalent and that may not include all parameters. If you look at the actions, it will list the olives that generated and you will see two version of the same source file.

To get Shesmu to replace the actions, purge the old ones (either individually or in bulk). This will cause the new action to be in the scheduler.

Expand Down Expand Up @@ -61,4 +61,4 @@ No worries, this isn't much harder:
You can click almost any cell header or value and then use the buttons at the bottom to act on the subset of actions. Use the _Add Filter_ button to slice and dice the actions displayed.

## Can I see how some data is propagating through this olive?
Not quite, but if go to the _Olives_ page and select the olive, click _Edit in Simulator_ to have the source code for that file show up in the simulation dashboard. Add a _Where_ or _Dump_ clauses to filter the data of interest and simulate it to see what's going on.
Not quite, but you can go to the _Olives_ page and select the olive, and click _Edit in Simulator_ to have the source code for that file show up in the simulation dashboard. Add a _Where_ or _Dump_ clause to filter the data of interest and simulate it to see what's going on.
8 changes: 4 additions & 4 deletions docs/glossary.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ strings, or converted into tuples.
The data that is available to olives. This data is effectively tabular even
though it is never really encoded that way. Each record/row gets processed by
an olive where each column is available as a variable. Columns cannot be
missing/null. Missing entires need to either be substituted with dummy values
missing/null. Missing entries need to either be substituted with dummy values
or optional values. If the schema is ragged, it can be expressed as a JSON
value.

Expand All @@ -65,7 +65,7 @@ design to choice to prevent _matched_ lists where the indices mean something.
Create a list of tuples in this case.

## Object
Shemu's objects are not like Java's object. They are more like JSON objects or
Shesmu's objects are not like Java's object. They are more like JSON objects or
tuples with property names instead of indices.

## Olive
Expand Down Expand Up @@ -100,7 +100,7 @@ an entire table in a database.

## Search
A filter with a name that allows the UI to quickly select an interesting set of
actions. The can be used for debugging or as dashboards.
actions. They can be used for debugging or as dashboards.

## Signature
A fingerprint (hash or value) derived from the values of variables read by an olive.
Expand All @@ -113,7 +113,7 @@ should be rerun. The input format determines which variables should make it
into the signature and which should be excluded.

## Throttler
A method to stop actions from running. Since Shesmu may be talking to may
A method to stop actions from running. Since Shesmu may be talking to many
systems at once, throttlers provide a way to take some of those systems down
for maintenance or limit Shesmu's traffic to them during an overload. Actions
and olives check for permission to run from the throttlers and will quit early
Expand Down
10 changes: 5 additions & 5 deletions docs/guided-meditations.md
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ Invert the value of _X_ (_i.e._, if _X_ is true, then false)

- `[` _L_ `] = *`
Check that an alert has a label _L_ associated with it. If it is present with
any value, including the empty string, the it will match. _L_ may be a valid
any value, including the empty string, then it will match. _L_ may be a valid
Shesmu identifier, any string quoted, or an expression surrounded by `{}`.

- `[` _L_ `] =` _V_
Expand All @@ -99,7 +99,7 @@ surrounded by `{}`.
- `[` _L_ `] ~ /`_pattern_`/`
Check that an alert has a label _L_ and its value matches the regular
expression _pattern_ . If it is present with any value, including the empty
string, the it will match. _L_ may be a valid
string, then it will match. _L_ may be a valid
Shesmu identifier, any string quoted, or an expression surrounded by `{}`.

- `LIVE`
Expand Down Expand Up @@ -219,9 +219,9 @@ Allows the user to choose between several options. _step_ is a list of displays
- `Form` _entry1_[`,` _entry2_ ...] `Then` _step_
Allows collecting information from the user and then proceed to the next step
with that information available. _step_ is a list of displays followed by
another step. For details on the form entires, see the next section.
another step. For details on the form entries, see the next section.

#### Form Entires
#### Form Entries
To collect data from the user, a form entry will display a prompt that is stored in a variable.

- _name_ `=` _type_ `With Label` _labelexpr_
Expand Down Expand Up @@ -406,7 +406,7 @@ following:

### Define and Go-to
It can be useful to reuse steps in different contents. At the beginning of a
file, a reuable step can be defined:
file, a reusable step can be defined:

- `Define` _name_ `(` _type1_ _name1_`,` ... `)` _step_ `;`

Expand Down
14 changes: 7 additions & 7 deletions docs/implementation.md
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,7 @@ type safe. To create a new source format:
1. Create a class, _V_, that will hold all the data for a “row” in the incoming
data. It must be a class and not an interface.
1. Create a parameterless method in _V_ for every variable to be exposed. The
method names must be valid Shemsu names (lowercase with underscores) and
method names must be valid Shesmu names (lowercase with underscores) and
decorated with
[`@ShesmuVariable`](javadoc/ca.on.oicr.gsi.shesmu/ca/on/oicr/gsi/shesmu/plugin/input/ShesmuVariable.html)
annotations with the correct type descriptor. All methods must return
Expand Down Expand Up @@ -188,7 +188,7 @@ of these can be fixed (the same across all rows) or dynamic (a function that
takes an input row as a parameter). There are a number of overrides and
super-constructors to handle different numbers of input and output variables.
The exact configuration will depend on what information the grouper requires.
It maybe easiest to implement the grouper and see what information is necessary
It may be easiest to implement the grouper and see what information is necessary
and then work backward to the grouper definition.

1. Create a class _G_ that implements
Expand Down Expand Up @@ -262,7 +262,7 @@ All plugin integration is provided by:

A number of plugin features can be added to the `PluginFileType` or the
`PluginFile`. Anything placed in the `PluginFileType` will be a global
defintion. When Shesmu administrator creates configuration file, Shesmu will
definition. When Shesmu administrator creates configuration file, Shesmu will
spawn an instance of `PluginFile` to read that file. Any annotated methods
attached the `PluginFile` will be created per-instance. The name of the
configuration file will be included in the definition if it is created
Expand Down Expand Up @@ -327,16 +327,16 @@ be provided using a Shesmu type descriptor in the `type` parameter of the
annotation to any parameters. The `@ShesmuParameter` annotation can also
provide help text.

The name can be provided two ways: from the name of the method itself or fro
the `name` parameter of `@ShemsuMethod` annotation. If the name is associated
The name can be provided two ways: from the name of the method itself or from
the `name` parameter of `@ShesmuMethod` annotation. If the name is associated
with a `PluginFile` class, it must contain a `$` which will be replaced with
the name of the file. For instance, if the name of the method is `$_items` and
the file name is `foo.bar`, then the constant or variable will be available to
olives as `foo_items`.

The `@ShesmuMethod` annotation also has a `description` property that will be
shown in the definition page. In the description, `{instance}` and `{file}`
will be replace with the instance name and configuration file path,
will be replaced with the instance name and configuration file path,
respectively.

#### Using the Definer
Expand Down Expand Up @@ -533,7 +533,7 @@ will provide it with the functions it requires to manipulate that type.

To deliver a database to olives using `PluginFileType` or `PluginFile`:

1. Create a static method in `PluginFileType` or a virtual method in `PluginFile`, parameterized by `<T>`, that return _F_`<T>`. The returned type is used to discover parameters, so it must the be the correct subtype.
1. Create a static method in `PluginFileType` or a virtual method in `PluginFile`, parameterized by `<T>`, that return _F_`<T>`. The returned type is used to discover parameters, so it must be the correct subtype.
1. Annotate this method with [`@ShesmuRefill`](javadoc/ca.on.oicr.gsi.shesmu/ca/on/oicr/gsi/shesmu/plugin/refill/ShesmuRefill.html).
1. Name this method with a Shesmu-compatible name or set the `name` property in
the annotation.
Expand Down
2 changes: 1 addition & 1 deletion docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ Once a plugin is configured, it can provide:
- input formats: the data that olives can draw on using the `Input` declaration at the start of a file, or in `Join` or `LeftJoin` clauses
- signers: special variables that are computed based on the current row being processed in the olive
- source linker: once a Shesmu server is deployed, it can be useful to have links from the Shesmu dashboard to the original `.shesmu` sources, especially when they are stored in git or the like. A source linker knows how to convert a path on the local file system into a URL.
- throttlers: when Shesmu has actions to perform, it will perform them as as quickly as possible. It may be useful to throttle Shesmu based on external criteria.
- throttlers: when Shesmu has actions to perform, it will perform them as quickly as possible. It may be useful to throttle Shesmu based on external criteria.

To view what olives may use, from the main Shesmu status page, use the
`Definition` menu to view the available resources including documentation and
Expand Down
2 changes: 1 addition & 1 deletion docs/input-formats.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Configuring Input Formats
A _input format_ is the type of data that Shesmu olives process--that is, the
An _input format_ is the type of data that Shesmu olives process--that is, the
variables that are available to Shesmu programs. The actual data comes from a
matching _input data repository_ and many repositories can provide the same format.

Expand Down
2 changes: 1 addition & 1 deletion docs/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ On a Linux server, create a systemd configuration in `/lib/systemd/system/shesmu
[Install]
WantedBy=multi-user.target

If your Shesmu server cannot determine it's own URL (it attempts to use the
If your Shesmu server cannot determine its own URL (it attempts to use the
FQDN of the local system), in the `[Unit]` section, add:

Environment=LOCAL_URL=http://shesmu.myinstitute.org:8081/
Expand Down
Loading