Skip to content

Commit

Permalink
chore: release v0.8.0 (#553)
Browse files Browse the repository at this point in the history
  • Loading branch information
basmasking authored Oct 4, 2024
1 parent 42242e1 commit 63708be
Show file tree
Hide file tree
Showing 309 changed files with 4,177 additions and 2,599 deletions.
20 changes: 18 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,28 @@
# v0.7.5
[2024-06-03]
# v0.8.0
[2024-10-04]

### Features

* \[[550](https://github.com/MaskingTechnology/jitar/pull/550)] feat: application builds (#550) by Peter van Vliet

# v0.7.6
[2024-09-20]

### Features

* \[[542](https://github.com/MaskingTechnology/jitar/pull/542)] feat(runtime): gateway as runtime (#542) by Bas Meeuwissen

### Fixes

* \[[503](https://github.com/MaskingTechnology/jitar/pull/503)] fix(runtime): environment specific loading of Jitar (#503) by Peter van Vliet

### Chores

* \[[533](https://github.com/MaskingTechnology/jitar/pull/533)] chore(deps): august updates (#533) by dependabot[bot]
* \[[532](https://github.com/MaskingTechnology/jitar/pull/532)] chore(dependencies): july updates (#532) by dependabot[bot]
* \[[530](https://github.com/MaskingTechnology/jitar/pull/530)] chore: sonar properties (#530) by Bas Meeuwissen
* \[[531](https://github.com/MaskingTechnology/jitar/pull/531)] chore(dependencies): bump braces from 3.0.2 to 3.0.3 (#531) by dependabot[bot]
* \[[528](https://github.com/MaskingTechnology/jitar/pull/528)] chore: release 0.7.5 (#528) by Bas Meeuwissen
* \[[526](https://github.com/MaskingTechnology/jitar/pull/526)] chore: sonar issues (#526) by Bas Meeuwissen
* \[[524](https://github.com/MaskingTechnology/jitar/pull/524)] chore(deps): june updates (#524) by dependabot[bot]
* \[[522](https://github.com/MaskingTechnology/jitar/pull/522)] chore(examples): exclude webui folder (#522) by Bas Meeuwissen
Expand Down
23 changes: 7 additions & 16 deletions documentation/docs/.vitepress/config.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { defineConfig } from 'vitepress'
import { defineConfig } from 'vitepress';

// https://vitepress.dev/reference/site-config
export default defineConfig({
Expand Down Expand Up @@ -69,9 +69,7 @@ export default defineConfig({
text: 'MONITOR',
items: [
{ text: 'Logging', link: '/monitor/logging' },
{ text: 'Health', link: '/monitor/health' },
{ text: 'Procedures', link: '/monitor/procedures' },
{ text: 'Workers', link: '/monitor/workers' }
{ text: 'Health', link: '/monitor/health' }
]
},
{
Expand All @@ -82,19 +80,11 @@ export default defineConfig({
{ text: 'Migrate away from Jitar', link: '/guides/migrate-away-from-jitar' }
]
},
{
text: 'INTERNALS',
items: [
{ text: 'Caching', link: '/internals/caching' },
{ text: 'Data serialization', link: '/internals/data-serialization' },
{ text: 'Reflection', link: '/internals/reflection' }
]
},
{
text: 'EXAMPLES',
items: [
{ text: 'Concepts', link: '/examples/concepts' },
{ text: 'Apps', link: '/examples/apps' }
{ text: 'Full stack', link: '/examples/full-stack' }
]
},
{
Expand All @@ -119,13 +109,14 @@ export default defineConfig({
},

socialLinks: [
{ icon: 'discord', link: 'https://discord.gg/Bqwy8azp5R' },
{ icon: 'github', link: 'https://github.com/MaskingTechnology/jitar' },
{ icon: 'discord', link: 'https://discord.gg/Bqwy8azp5R' }
{ icon: 'npm', link: 'https://www.npmjs.com/package/jitar' }
],

footer: {
message: 'Jitar is a project by Masking Technology',
copyright: 'Copyright © 2023 - Masking Technology B.V.'
copyright: 'Copyright © 2024 - Masking Technology B.V.'
}
}
})
});
10 changes: 5 additions & 5 deletions documentation/docs/community/contribute.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,22 +13,22 @@ next:

# Contribute

We are thrilled that you are interested in contributing to Jitar! We welcome all sorts of contributions, and there are several valuable ways to contribute.
We’re thrilled that you're interested in contributing to Jitar! We welcome all kinds of contributions, and there are many valuable ways to get involved.

## Issues

Feel free to add issues to our [issue board](https://github.com/MaskingTechnology/jitar/issues){target="_blank"}. Before adding an issue, we advise you to look at the current [discussions](https://github.com/MaskingTechnology/jitar/discussions){target="_blank"} to see if your issue is already being discussed.
Feel free to add issues to our [issue board](https://github.com/MaskingTechnology/jitar/issues){target="_blank"}. Before adding an issue, we recommend checking the current [discussions](https://github.com/MaskingTechnology/jitar/discussions){target="_blank"} to see if your issue is already being addressed.

You can also vote on existing issues to help us prioritize the work that needs to be done.

## Pull requests

Jitar is an open source project and it’s open for contributions. You can pick up issues and/or submit a pull request.
Jitar is an open-source project, open to contributions. You can pick up issues or submit a pull request.

## Documentation

Did you spot a mistake in the documentation? Is the grammar of the texts incorrect? Please help us to improve the documentation. We’re non native English speakers and appreciate the help.
Did you spot a mistake in the documentation? Is the grammar incorrect? Please help us improve it. We’re non-native English speakers and would appreciate your help.

## Translation

Do you miss your native language here? The documentation is written in English only, but you’re more than welcome to translate it to your native language.
Is your native language missing here? The documentation is written only in English, but you’re more than welcome to translate it into your native language.
6 changes: 3 additions & 3 deletions documentation/docs/community/get-help.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
layout: doc

prev:
text: App examples
link: /examples/apps
text: Full stack examples
link: /examples/full-stack

next:
text: Give feedback
Expand All @@ -13,6 +13,6 @@ next:

# Get help

Did you read through the docs, but still have questions? The community is here to help!
Read through the docs but still have questions? The community is here to help!

You can find us on [Discord](https://discord.gg/Bqwy8azp5R){target="_blank"}, or start a [discussion on Github](https://github.com/MaskingTechnology/jitar/discussions){target="_blank"}.
2 changes: 1 addition & 1 deletion documentation/docs/community/give-feedback.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,4 @@ next:

The only way to make Jitar better is by processing feedback. We value every piece of feedback, whether it’s a positive experience or a negative one.

You can reach out to us on [Discord](https://discord.gg/Bqwy8azp5R){target="_blank"} or [Github](https://github.com/MaskingTechnology/jitar/discussions){target="_blank"}. If you want to use twitter or mastodon, please mention `#jitar` so we can easily find your message.
You can reach out to us on [Discord](https://discord.gg/Bqwy8azp5R){target="_blank"} or [Github](https://github.com/MaskingTechnology/jitar/discussions){target="_blank"}. If you want to use [X](https://x.com/maskingtech){target="_blank"} or mastodon, please mention `#jitar` so we can easily find your message.
4 changes: 2 additions & 2 deletions documentation/docs/deploy/environments.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,18 +22,18 @@ We like to use a standalone service for development. This requires only one Jita
```json
{
"url": "http://localhost:3000",
"middlewares": [...],
"standalone":
{
"assets": [...],
"middlewares": [...]
}
}
```

Next you need to add a script in the `package.json` file.

```json
"standalone": "node --experimental-network-imports dist/standalone.js --config=services/standalone.json",
"standalone": "jitar start --service=services/standalone.json",
```

Now you can start the environment with NPM.
Expand Down
12 changes: 5 additions & 7 deletions documentation/docs/deploy/health-checks.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,6 @@ next:

The [gateway service](../fundamentals/runtime-services#gateway) determines if a worker still can be used safely by frequently checking its health. Health checks are used for health determination. Jitar has no out-of-the-box health checks, but you can create and add your own. A common use case is for checking database availability. In case a worker can't access its database, we want the gateway to stop using it. Health checks can be added to any of the services.

::: warning BREAKING CHANGES
Version 0.5 introduced breaking changes. Please check our [migration guide](https://github.com/MaskingTechnology/jitar/blob/main/migrations/migrate-from-0.4.x-to-0.5.0.md) for more information.
:::

In this section you'll learn how to create and add your own health checks.

## Creating health checks
Expand All @@ -33,7 +29,7 @@ export default class DatabaseHealthCheck implements HealthCheck
{
constructor(/* ... */) { /* ... */ }

get name() { return 'database'; } // New required property!
get name() { return 'database'; }

get timeout() { return undefined; }

Expand Down Expand Up @@ -64,11 +60,13 @@ We can use this module file for the registration at the service:
"healthChecks": ["./databaseHealthCheck"],
"worker":
{
// ...
...
}
}
```

Once added, the worker will trigger the check automatically. You can also check yourself using the health API. More information on this can be found in the [MONITOR section](../monitor/health).

**Note** that health checks are defined at the root level of the configuration. This means you can add health checks for all service types. When using external monitoring tools that monitor a cluster, this could be useful.
::: info NOTE
Health checks are defined at the root level of the configuration. This means you can add health checks for all service types. When using external monitoring tools that monitor a cluster, this could be useful.
:::
16 changes: 8 additions & 8 deletions documentation/docs/deploy/runtime-settings.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,21 +16,21 @@ next:
The server accepts a few command line arguments to configure its runtime behavior. A fully configured command line looks like this:

```bash
node --experimental-network-imports dist/jitar.js --config=services/standalone.json --loglevel=info --bodylimit=204800
jitar start --service=services/standalone.json --env-file=.env --log-level=info --http-body-limit=204800
```

## Network imports
## Service file

Jitar is heavily dependent on network imports for importing functions and other components. Node needs the `--experimental-network-imports` flag in order to import enable this feature.
The `--service` argument must be specified to point to the server configuration file. More information regarding the configuration file can be found in the [runtime services](../fundamentals/runtime-services#basic-configuration) section.

## Log level
## Environment file

To control the level of logging, the optional `--loglevel` argument can be used. The default for this value is `info`. A more elaborate description of the log levels can be found in the [logging](../monitor/logging) section.
The `--env-file` argument can be used to specify a file that contains environment variables. This is an optional argument without a default value.

## Configuration
## Log level

The `--config` argument must be specified to point to the server configuration file. More information regarding the configuration file can be found in the [runtime services](../fundamentals/runtime-services#basic-configuration) section.
To control the level of logging, the optional `--log-level` argument can be used. The default for this value is `info`. A more elaborate description of the log levels can be found in the [logging](../monitor/logging) section.

## Body limit

To control the maximum json body size of incoming requests, the `--bodylimit` argument can be used. This is an optional argument and the body size limit defaults to 200KB if no value is provided. The value can only be set in bytes using a numeric value, e.g. `--bodylimit=1048576` for 1MB.
To control the maximum json body size of incoming requests, the `--http-body-limit` argument can be used. This is an optional argument and the body size limit defaults to 200KB if no value is provided. The value can only be set in bytes using a numeric value, e.g. `--http-body-limit=1048576` for 1MB.
3 changes: 0 additions & 3 deletions documentation/docs/develop/assets.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,10 @@ Assets like images, documents, etc. can be placed in any location inside the sou
"url": "http://repository.example.com:3000",
"repository":
{
"source": "./src",
"cache": "./.jitar",
"index": "index.html",
"assets": ["*.html", "*.js", "*.css", "assets/**/*"]
}
}
```

Assets can be whitelisted per file, or by using glob patterns. For example the pattern `assets/**/*` whitelists all files and subfolder files in the assets folder.

2 changes: 1 addition & 1 deletion documentation/docs/develop/data-sharing.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ Most of what you're learning here is not Jitar specific and applies to building

## Automatic (de)serialization

All parameters and return values are (de)serialized automatically for remote functions. Jitar provides a [powerful (de)serializer](../internals/data-serialization) that is able to transport any (complex) data type. By default all built-in JavaScript objects are supported like maps, sets, dates, etc. There's also support for custom classes.
All parameters and return values are (de)serialized automatically for remote functions. Jitar provides a powerful (de)serializer that is able to transport any (complex) data type. By default all built-in JavaScript objects are supported like maps, sets, dates, etc. There's also support for custom classes.

## Using objects
When working with objects it's important to know that the other end always receives a copy of the object, and not the actual object itself. If you don't take this into account the application behaves differently in a distributed setup. Take for example the following setup.
Expand Down
9 changes: 2 additions & 7 deletions documentation/docs/develop/middleware.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,6 @@ next:

Middleware provides a way to hook into Jitars automated communication system. It allows you to add additional logic to incoming and outgoing requests. Common use cases are adding authentication and logging to applications.

::: warning BREAKING CHANGES
Version 0.5 introduced breaking changes. Please check our [migration guide](https://github.com/MaskingTechnology/jitar/blob/main/migrations/migrate-from-0.4.x-to-0.5.0.md) for more information.
:::

In this section you'll learn how to create and add your own middleware.

## Creating middleware
Expand Down Expand Up @@ -105,15 +101,14 @@ We can use this module file for the registration at the service:
// services/worker.json
{
"url": "http://localhost:3000",
"middlewares": ["./defaultRequestLogger"],
"worker":
{
"middlewares": ["./defaultRequestLogger"]
...
}
}
```

**Note** that middleware can only be added to a worker, gateway, proxy and standalone service because they are actively involved with the communication system.

It's likely that different services require different middleware. For example, you might want to add authentication middleware to the gateway and authorization middleware to the worker.

::: warning KEEP IN MIND
Expand Down
4 changes: 3 additions & 1 deletion documentation/docs/develop/validation.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,6 @@ next:

# Validation

Jitar does not automatically validate data that is shared between instances. We are working on adding validation using middleware. For more information you can take a look at the [issue on GitHub](https://github.com/MaskingTechnology/jitar/issues/289){target="_blank"}.
Jitar does not automatically validate data that is shared between instances as this is not part of the functionality of a runtime.

However, you can easily add validation to your application by using middleware, or in the application like we did in our [full stack example](../examples/full-stack).
2 changes: 1 addition & 1 deletion documentation/docs/develop/writing-functions.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ async function sayHello({ name }: Person): Promise<string> { /* … */ }
```

::: warning IMPORTANT
Nested parameter destructuring is on the [known limitations](../internals/reflection#known-limitations) list and will be supported in future versions.
Nested parameter destructuring is a known limitation and will be supported in future versions.
:::

### Return value
Expand Down
22 changes: 0 additions & 22 deletions documentation/docs/examples/apps.md

This file was deleted.

Loading

0 comments on commit 63708be

Please sign in to comment.