Skip to content

Commit

Permalink
Fix links and include main README
Browse files Browse the repository at this point in the history
  • Loading branch information
uglide committed Aug 9, 2024
1 parent 1024670 commit 264dec0
Show file tree
Hide file tree
Showing 11 changed files with 55 additions and 142 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install mkdocs mkdocs-material pymdown-extensions
pip install mkdocs mkdocs-material pymdown-extensions mkdocs-macros-plugin
- name: Build docs
run: |
mkdocs build -d docsbuild
Expand Down
28 changes: 14 additions & 14 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,18 +11,18 @@ Supports advanced Redis features such as Sentinel, Cluster, Pipelining, Auto-Rec

This version of Lettuce has been tested against the latest Redis source-build.

* [synchronous](https://github.com/lettuce-io/lettuce-core/wiki/Basic-usage), [asynchronous](https://github.com/lettuce-io/lettuce-core/wiki/Asynchronous-API-%284.0%29) and [reactive](https://github.com/lettuce-io/lettuce-core/wiki/Reactive-API-%285.0%29) usage
* [Redis Sentinel](https://github.com/lettuce-io/lettuce-core/wiki/Redis-Sentinel)
* [Redis Cluster](https://github.com/lettuce-io/lettuce-core/wiki/Redis-Cluster)
* [SSL](https://github.com/lettuce-io/lettuce-core/wiki/SSL-Connections) and [Unix Domain Socket](https://github.com/lettuce-io/lettuce-core/wiki/Unix-Domain-Sockets) connections
* [Streaming API](https://github.com/lettuce-io/lettuce-core/wiki/Streaming-API)
* [CDI](https://github.com/lettuce-io/lettuce-core/wiki/CDI-Support) and [Spring](https://github.com/lettuce-io/lettuce-core/wiki/Spring-Support) integration
* [Codecs](https://github.com/lettuce-io/lettuce-core/wiki/Codecs) (for UTF8/bit/JSON etc. representation of your data)
* [synchronous](https://redis.github.io/lettuce/user-guide/connecting-redis/#basic-usage), [asynchronous](https://redis.github.io/lettuce/user-guide/async-api/) and [reactive](https://redis.github.io/lettuce/user-guide/reactive-api/) usage
* [Redis Sentinel](https://redis.github.io/lettuce/ha-sharding/#redis-sentinel_1)
* [Redis Cluster](https://redis.github.io/lettuce/ha-sharding/#redis-cluster)
* [SSL](https://redis.github.io/lettuce/advanced-usage/#ssl-connections) and [Unix Domain Socket](https://redis.github.io/lettuce/advanced-usage/#unix-domain-sockets) connections
* [Streaming API](https://redis.github.io/lettuce/advanced-usage/#streaming-api)
* [CDI](https://redis.github.io/lettuce/integration-extension/#cdi-support)
* [Codecs](https://redis.github.io/lettuce/integration-extension/#codecss) (for UTF8/bit/JSON etc. representation of your data)
* multiple [Command Interfaces](https://github.com/lettuce-io/lettuce-core/wiki/Command-Interfaces-%284.0%29)
* Support for [Native Transports](https://github.com/lettuce-io/lettuce-core/wiki/Native-Transports)
* Support for [Native Transports](https://redis.github.io/lettuce/advanced-usage/#native-transports)
* Compatible with Java 8++ (implicit automatic module w/o descriptors)

See the [reference documentation](https://lettuce.io/docs/) and [Wiki](https://github.com/lettuce-io/lettuce-core/wiki) for more details.
See the [reference documentation](https://redis.github.io/lettuce/) and [API Reference](https://www.javadoc.io/doc/io.lettuce/lettuce-core/latest/index.html) for more details.

## How do I Redis?

Expand Down Expand Up @@ -109,7 +109,7 @@ to the lowercase Redis command name. Complex commands with multiple modifiers
that change the result type include the CamelCased modifier as part of the
command name, e.g. zrangebyscore and zrangebyscoreWithScores.

See [Basic usage](https://github.com/lettuce-io/lettuce-core/wiki/Basic-usage) for further details.
See [Basic usage](https://redis.github.io/lettuce/user-guide/connecting-redis/#basic-usage) for further details.

Asynchronous API
------------------------
Expand All @@ -126,7 +126,7 @@ set.get() == "OK"
get.get() == "value"
```

See [Asynchronous API](https://github.com/lettuce-io/lettuce-core/wiki/Asynchronous-API-%284.0%29) for further details.
See [Asynchronous API](https://redis.github.io/lettuce/user-guide/async-api/) for further details.

Reactive API
------------------------
Expand All @@ -142,7 +142,7 @@ set.subscribe();
get.block() == "value"
```

See [Reactive API](https://github.com/lettuce-io/lettuce-core/wiki/Reactive-API-%285.0%29) for further details.
See [Reactive API](https://redis.github.io/lettuce/user-guide/reactive-api/) for further details.

Pub/Sub
-------
Expand Down Expand Up @@ -177,7 +177,7 @@ $ make test
Bugs and Feedback
-----------

For bugs, questions and discussions please use the [GitHub Issues](https://github.com/lettuce-io/lettuce-core/issues).
For bugs, questions and discussions please use the [GitHub Issues](https://github.com/redis/lettuce/issues).

License
-------
Expand All @@ -189,4 +189,4 @@ Contributing
-------

Github is for social coding: if you want to write code, I encourage contributions through pull requests from forks of this repository.
Create Github tickets for bugs and new features and comment on the ones that you are interested in and take a look into [CONTRIBUTING.md](https://github.com/lettuce-io/lettuce-core/blob/main/.github/CONTRIBUTING.md)
Create Github tickets for bugs and new features and comment on the ones that you are interested in and take a look into [CONTRIBUTING.md](https://github.com/redis/lettuce/blob/main/.github/CONTRIBUTING.md)
18 changes: 0 additions & 18 deletions docs/README.md

This file was deleted.

12 changes: 6 additions & 6 deletions docs/advanced-usage.md
Original file line number Diff line number Diff line change
Expand Up @@ -950,13 +950,13 @@ the command is running and is not yet completed.

There are 4 StreamingChannels accepting different data types:

- [KeyStreamingChannel](http://redis.paluch.biz/docs/api/releases/latest/com/lambdaworks/redis/output/KeyStreamingChannel.html)
- [KeyStreamingChannel](https://www.javadoc.io/static/io.lettuce/lettuce-core/6.4.0.RELEASE/io/lettuce/core/output/KeyStreamingChannel.html)

- [ValueStreamingChannel](http://redis.paluch.biz/docs/api/releases/latest/com/lambdaworks/redis/output/ValueStreamingChannel.html)
- [ValueStreamingChannel](https://www.javadoc.io/static/io.lettuce/lettuce-core/6.4.0.RELEASE/io/lettuce/core/output/ValueStreamingChannel.html)

- [KeyValueStreamingChannel](http://redis.paluch.biz/docs/api/releases/latest/com/lambdaworks/redis/output/KeyValueStreamingChannel.html)
- [KeyValueStreamingChannel](https://www.javadoc.io/static/io.lettuce/lettuce-core/6.4.0.RELEASE/io/lettuce/core/output/KeyValueStreamingChannel.html)

- [ScoredValueStreamingChannel](http://redis.paluch.biz/docs/api/releases/latest/com/lambdaworks/redis/output/ScoredValueStreamingChannel.html)
- [ScoredValueStreamingChannel](https://www.javadoc.io/static/io.lettuce/lettuce-core/6.4.0.RELEASE/io/lettuce/core/output/ScoredValueStreamingChannel.html)

The result of the steaming methods is the count of keys/values/key-value
pairs as `long` value.
Expand Down Expand Up @@ -1638,7 +1638,7 @@ multiple commands in a batch (size depends on your environment, but
batches between 50 and 1000 work nice during performance tests) can
increase the throughput up to a factor of 5x.

Pipelining within the Redis docs: <http://redis.io/topics/pipelining>
Pipelining within the Redis docs: <https://redis.io/docs/latest/develop/use/pipelining/>

## Connection Pooling

Expand Down Expand Up @@ -2577,7 +2577,7 @@ replica yet. If a failover occurs at that moment, a replica takes over,
and the not yet replicated data is lost. Replication behavior is
Redis-specific. Further documentation about failover and consistency
from Redis perspective is available within the Redis docs:
<http://redis.io/topics/replication>
<https://redis.io/docs/latest/operate/oss_and_stack/management/replication/>

### Switching between *at-least-once* and *at-most-once* operations

Expand Down
27 changes: 10 additions & 17 deletions docs/getting-started.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ Add these lines to file pom.xml:
<dependency>
<groupId>io.lettuce</groupId>
<artifactId>lettuce-core</artifactId>
<version>6.3.2.RELEASE</version>
<version>6.4.0.RELEASE</version>
</dependency>
```

Expand All @@ -23,7 +23,7 @@ Add these lines to file ivy.xml:
``` xml
<ivy-module>
<dependencies>
<dependency org="io.lettuce" name="lettuce-core" rev="6.3.2.RELEASE"/>
<dependency org="io.lettuce" name="lettuce-core" rev="6.4.0.RELEASE"/>
</dependencies>
</ivy-module>
```
Expand All @@ -34,7 +34,7 @@ Add these lines to file build.gradle:

``` groovy
dependencies {
implementation 'io.lettuce:lettuce-core:6.3.2.RELEASE'
implementation 'io.lettuce:lettuce-core:6.4.0.RELEASE'
}
```

Expand Down Expand Up @@ -71,24 +71,17 @@ Done!

Do you want to see working examples?

- [Standalone
Redis](https://github.com/redis/lettuce/blob/6.3.2.RELEASE/src/test/java/io/lettuce/examples/ConnectToRedis.java)
- [Standalone Redis](https://github.com/redis/lettuce/blob/main/src/test/java/io/lettuce/examples/ConnectToRedis.java)

- [Standalone Redis with
SSL](https://github.com/redis/lettuce/blob/6.3.2.RELEASE/src/test/java/io/lettuce/examples/ConnectToRedisSSL.java)
- [Standalone Redis with SSL](https://github.com/redis/lettuce/blob/main/src/test/java/io/lettuce/examples/ConnectToRedisSSL.java)

- [Redis
Sentinel](https://github.com/redis/lettuce/blob/6.3.2.RELEASE/src/test/java/io/lettuce/examples/ConnectToRedisUsingRedisSentinel.java)
- [Redis Sentinel](https://github.com/redis/lettuce/blob/main/src/test/java/io/lettuce/examples/ConnectToRedisUsingRedisSentinel.java)

- [Redis
Cluster](https://github.com/redis/lettuce/blob/6.3.2.RELEASE/src/test/java/io/lettuce/examples/ConnectToRedisCluster.java)
- [Redis Cluster](https://github.com/redis/lettuce/blob/main/src/test/java/io/lettuce/examples/ConnectToRedisCluster.java)

- [Connecting to a ElastiCache
Master](https://github.com/redis/lettuce/blob/6.3.2.RELEASE/src/test/java/io/lettuce/examples/ConnectToElastiCacheMaster.java)
- [Connecting to a ElastiCache Master](https://github.com/redis/lettuce/blob/main/src/test/java/io/lettuce/examples/ConnectToElastiCacheMaster.java)

- [Connecting to ElastiCache with
Master/Replica](https://github.com/redis/lettuce/blob/6.3.2.RELEASE/src/test/java/io/lettuce/examples/ConnectToMasterSlaveUsingElastiCacheCluster.java)
- [Connecting to ElastiCache with Master/Replica](https://github.com/redis/lettuce/blob/main/src/test/java/io/lettuce/examples/ConnectToMasterSlaveUsingElastiCacheCluster.java)

- [Connecting to Azure Redis
Cluster](https://github.com/redis/lettuce/blob/6.3.2.RELEASE/src/test/java/io/lettuce/examples/ConnectToRedisClusterSSL.java)
- [Connecting to Azure Redis Cluster](https://github.com/redis/lettuce/blob/main/src/test/java/io/lettuce/examples/ConnectToRedisClusterSSL.java)

8 changes: 4 additions & 4 deletions docs/ha-sharding.md
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,7 @@ following options:
lookup using the `masterId`. As soon as the Redis Sentinel provides
an address the connection is restored to the new Redis instance

Read more at <http://redis.io/topics/sentinel>
Read more at <https://redis.io/docs/latest/operate/oss_and_stack/management/sentinel>

### Examples

Expand Down Expand Up @@ -244,10 +244,10 @@ users of the cluster connection might be affected.

### Command routing

The [concept of Redis Cluster](http://redis.io/topics/cluster-tutorial)
The [concept of Redis Cluster](https://redis.io/docs/latest/operate/oss_and_stack/management/scaling/)
bases on sharding. Every master node within the cluster handles one or
more slots. Slots are the [unit of
sharding](http://redis.io/topics/cluster-tutorial#redis-cluster-data-sharding)
sharding](https://redis.io/docs/latest/operate/oss_and_stack/management/scaling/#redis-cluster-data-sharding)
and calculated from the commands' key using `CRC16 MOD 16384`. Hash
slots can also be specified using hash tags such as `{user:1000}.foo`.

Expand Down Expand Up @@ -361,7 +361,7 @@ selections can be constructed by the following presets:
- all nodes

A custom selection of nodes is available by implementing [custom
predicates](http://redis.paluch.biz/docs/api/current/com/lambdaworks/redis/cluster/api/async/RedisAdvancedClusterAsyncCommands.html#nodes-java.util.function.Predicate-)
predicates](https://www.javadoc.io/static/io.lettuce/lettuce-core/6.4.0.RELEASE/io/lettuce/core/cluster/api/async/RedisAdvancedClusterAsyncCommands.html#nodes-java.util.function.Predicate-)
or lambdas.

The particular results map to a cluster node (`RedisClusterNode`) that
Expand Down
1 change: 1 addition & 0 deletions docs/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{% include 'README.md' %}
6 changes: 6 additions & 0 deletions docs/new-features.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
# New & Noteworthy

## What’s new in Lettuce 6.4

- [Hash Field Expiration](https://redis.io/docs/latest/develop/data-types/hashes/#field-expiration) is now fully supported
- [Sharded Pub/Sub](https://redis.io/docs/latest/develop/interact/pubsub/#sharded-pubsub) is now fully supported
- Support `CLIENT KILL` with `[MAXAGE]` parameter and `HSCAN` with `NOVALUES` parameter

## What’s new in Lettuce 6.3

- [Redis Function support](user-guide/redis-functions.md) (`fcall` and `FUNCTION`
Expand Down
82 changes: 4 additions & 78 deletions docs/overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,26 +12,7 @@ familiar with Redis concepts.

## Knowing Redis

NoSQL stores have taken the storage world by storm. It is a vast domain
with a plethora of solutions, terms and patterns (to make things worse
even the term itself has multiple
[meanings](https://www.google.com/search?q=nosql+acronym)). While some
of the principles are common, it is crucial that the user is familiar to
some degree with Redis. The best way to get acquainted to these
solutions is to read and follow their documentation - it usually doesn't
take more than 5-10 minutes to go through them and if you are coming
from an RDMBS-only background many times these exercises can be an
eye-opener.

The jumping off ground for learning about Redis is
[redis.io](https://www.redis.io/). Here is a list of other useful
resources:

- The [interactive tutorial](https://try.redis.io/) introduces Redis.

- The [command references](https://redis.io/commands) explains Redis
commands and contains links to getting started guides, reference
documentation and tutorials.
If you are new to Redis, you can find a good introduction to Redis on [redis.io](https://redis.io/docs/latest/develop/)

## Project Reactor

Expand Down Expand Up @@ -65,78 +46,23 @@ Lettuce 6.x binaries require JDK level 8.0 and above.

In terms of [Redis](https://redis.io/), at least 2.6.

## Additional Help Resources

Learning a new framework is not always straight forward.In this section,
we try to provide what we think is an easy-to-follow guide for starting
with Lettuce. However, if you encounter issues or you are just looking
for an advice, feel free to use one of the links below:

### Support

There are a few support options available:

- Lettuce on Stackoverflow
[Stackoverflow](https://stackoverflow.com/questions/tagged/lettuce) is
a tag for all Lettuce users to share information and help each
other.Note that registration is needed **only** for posting.

- Get in touch with the community on
[Gitter](https://gitter.im/lettuce-io/Lobby).

- GitHub Discussions:
<https://github.com/redis/lettuce/discussions>

- Report bugs (or ask questions) in GitHub issues
<https://github.com/redis/lettuce/issues>.

### Following Development

For information on the Lettuce source code repository, nightly builds
and snapshot artifacts please see the [Lettuce
homepage](https://lettuce.io). You can help make lettuce best serve the
needs of the lettuce community by interacting with developers through
the Community on
[Stackoverflow](https://stackoverflow.com/questions/tagged/lettuce). If
you encounter a bug or want to suggest an improvement, please create a
ticket on the lettuce issue
[tracker](https://github.com/redis/lettuce/issues).

### Project Metadata

- Version Control – <https://github.com/redis/lettuce>

- Releases and Binary Packages –
<https://github.com/redis/lettuce/releases>

- Issue tracker – <https://github.com/redis/lettuce/issues>

- Release repository – <https://repo1.maven.org/maven2/> (Maven Central)

- Snapshot repository –
<https://oss.sonatype.org/content/repositories/snapshots/> (OSS
Sonatype Snapshots)

## Where to go from here

- Head to [Getting Started](getting-started.md) if you feel like jumping
straight into the code.

- Go to [High-Availability and
Sharding](ha-sharding.md) for Master/Replica
- Go to [High-Availability and Sharding](ha-sharding.md) for Master/Replica
("Master/Slave"), Redis Sentinel and Redis Cluster topics.

- In order to dig deeper into the core features of Reactor:

- If you’re looking for client configuration options, performance
related behavior and how to use various transports, go to [Advanced
usage](advanced-usage.md).
related behavior and how to use various transports, go to [Advanced usage](advanced-usage.md).

- See [Integration and Extension](integration-extension.md) for
extending Lettuce with codecs or integrate it in your CDI/Spring
application.

- You want to know more about **at-least-once** and **at-most-once**?
Take a look into [Command execution
reliability](advanced-usage.md#command-execution-reliability).
Take a look into [Command execution reliability](advanced-usage.md#command-execution-reliability).

5 changes: 2 additions & 3 deletions docs/user-guide/async-api.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ transmission has finished and the response of the transmission is
processed. This means, in the context of Lettuce and especially Redis,
that multiple commands can be issued serially without the need of
waiting to finish the preceding command. This mode of operation is also
known as [Pipelining](http://redis.io/topics/pipelining). The following
known as [Pipelining](https://redis.io/docs/latest/develop/use/pipelining/). The following
example should give you an impression of the mode of operation:

- Given client *A* and client *B*
Expand Down Expand Up @@ -455,8 +455,7 @@ doing blocking calls within the `Runnable`.

Another chaining method worth mentioning is the either-or chaining. A
couple of `…​Either()` methods are available on a `CompletionStage<T>`,
see the [Java 8 API
docs](https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletionStage.html)
see the [Java 8 API docs](https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletionStage.html)
for the full reference. The either-or pattern consumes the value from
the first future that is completed. A good example might be two services
returning the same data, for instance, a Master-Replica scenario, but
Expand Down
8 changes: 7 additions & 1 deletion mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,11 @@ theme:
primary: white
accent: red

plugins:
- search
- macros:
include_dir: .

markdown_extensions:
- pymdownx.highlight:
anchor_linenums: true
Expand Down Expand Up @@ -41,4 +46,5 @@ nav:
- Working with dynamic Redis Command Interfaces: redis-command-interfaces.md
- Advanced Usage: advanced-usage.md
- Integration and Extension: integration-extension.md
- Frequently Asked Questions: faq.md
- Frequently Asked Questions: faq.md
- API Reference: https://www.javadoc.io/doc/io.lettuce/lettuce-core/latest/index.html

0 comments on commit 264dec0

Please sign in to comment.