Skip to content

Commit

Permalink
chore(docs): update version infos
Browse files Browse the repository at this point in the history
  • Loading branch information
lmichaelis committed Nov 2, 2023
1 parent 4fc15ac commit 3fdaeb4
Show file tree
Hide file tree
Showing 4 changed files with 14 additions and 25 deletions.
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
cmake_minimum_required(VERSION 3.10)
project(ZenKit VERSION 2.0.0)
project(ZenKit VERSION 1.3.0)
include(support/BuildSupport.cmake)

set(CMAKE_CXX_STANDARD 17)
Expand Down
20 changes: 10 additions & 10 deletions docs/library/misc/v1-to-v2.md → docs/library/misc/v1.2-to-v1.3.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Migration Guide v1 to v2
# Migration Guide v1.2 to v1.3

With the update to version 2.0, the library previously known as *"phoenix"* has bee re-branded to *"ZenKit"* to avoid
With the update to version 1.3, the library previously known as *"phoenix"* has bee re-branded to *"ZenKit"* to avoid
confusion with [PhoenixTales' Game](https://phoenixthegame.com/main) of the same name. In this update, the library's
API has changed significantly but a mostly backwards-compatible API has been kept intact.

Expand All @@ -9,7 +9,7 @@ API has changed significantly but a mostly backwards-compatible API has been kep
!!! danger
These changes are required for your application to build with ZenKit.

After updating *ZenKit* to v2, the first thing you have to do is update your CMake configuration. The `phoenix` target
After updating *ZenKit* to v1.3, the first thing you have to do is update your CMake configuration. The `phoenix` target
has been renamed to `zenkit`. Thus, you must now link against `zenkit` instead. The CMake variables for configuring
*ZenKit* have also been renamed and a new one has been added:

Expand All @@ -25,10 +25,10 @@ should now build again. However, you will get a lot of deprecation warnings if y

### Replacing `phoenix::vdf_file`

The `phoenix::vdf_file` has been deprecated since v1.2 in favour of `phoenix::Vfs` and is removed in v2. Here's an
The `phoenix::vdf_file` has been deprecated since v1.2 in favour of `phoenix::Vfs` and is removed in v1.3. Here's an
example which shows how to migrate to the new implementation.

=== "<= v1.1"
=== "<= v1.2"

```c++
phoenix::vdf_file anims = phoenix::vdf_file::open("Anims.vdf");
Expand All @@ -48,7 +48,7 @@ example which shows how to migrate to the new implementation.
// use `buf`
```

=== ">= v1.2"
=== ">= v1.3"

```c++
phoenix::Vfs vfs {};
Expand All @@ -67,7 +67,7 @@ example which shows how to migrate to the new implementation.

### Replacing other APIs

The following APIs have been deprecated v1 and removed in v2:
The following APIs have been deprecated v1.2 and removed in v1.3:

* `way_net::waypoint(std::string const&)` - Directly access the `waypoints` member instead
* `archive_reader::read_raw_bytes()` - Replaced by `archive_reader::read_raw_bytes(size_t)`
Expand All @@ -87,7 +87,7 @@ is faster and simpler when used correctly.
To remedy this, all you need to do is use the `.load(Read*)` API instead of the `::parse(buffer)` API when loading in
any *ZenKit* asset. Here's an example which shows the differences between both versions when loading animations.

=== "< v2.0"
=== "< v1.3"

```cpp title="Example"
#include <phoenix/Animation.hh>
Expand All @@ -102,7 +102,7 @@ any *ZenKit* asset. Here's an example which shows the differences between both v
}
```

=== ">= v2.0"
=== ">= v1.3"

```cpp title="Example"
#include <phoenix/animation.hh>
Expand Down Expand Up @@ -168,5 +168,5 @@ been polished up a bit. This is what you should do:
The deprecation warnings from your compiler should tell you these changes too. Alternatively, you can look into the old
header files in `include/phoenix/` to see the type aliases which have been put in place.

Generally these changes may be applied gradually but note that the old API will be removed in v3 at the latest, so
Generally these changes may be applied gradually but note that the old API will be removed in v2 at the latest, so
switching to the new names is highly recommended.
2 changes: 1 addition & 1 deletion mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ nav:
- 'Getting Started': 'library/quickstart.md'
- 'File Type Reference': 'library/reference.md'
- 'Miscellaneous':
- 'Migration Guide (v1 ➞ v2)': 'library/misc/v1-to-v2.md'
- 'Migration Guide (v1.2v1.3)': 'library/misc/v1.2-to-v1.3.md'
- 'ZenKit Concepts':
- 'Archive': 'library/api/archive.md'
- 'Cutscene Library': 'library/api/cutscene-library.md'
Expand Down
15 changes: 2 additions & 13 deletions readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@
[![Platforms](https://img.shields.io/static/v1?label=Supports&message=GCC%20|%20Clang%20|%20MSVC%20|%20Apple%20Clang&color=blueviolet)]()
[![Version](https://img.shields.io/github/v/tag/GothicKit/phoenix?label=Version&sort=semver)](https://github.com/GothicKit/phoenix/releases/latest)

**_ZenKit_ has recently been updated to version 2.0! For information about how to migrate your projects, see the
[documentation](https://zenkit.gothickit.dev/library/misc/v1-to-v2/).**
**_ZenKit_ has recently been updated to version 1.3! For information about how to migrate your projects, see the
[documentation](https://zk.gothickit.dev/library/misc/v1.2-to-v1.3/).**

The _ZenKit_ project aims to re-implement file formats used by the _ZenGin_ made by [Piranha Bytes][] for their
early-2000s games [Gothic][] and [Gothic II][]. It is heavily based on [ZenLib][] which is used as a reference
Expand Down Expand Up @@ -237,17 +237,6 @@ int main(int, char**) {

For more examples on how to use _ZenKit_, take a look into the [examples][] directory and [phoenix studio][] repository.

## Versioning

_ZenKit_ uses [semantic versioning](https://semver.org/). Before updating _ZenKit_ in your application, make sure
that you are aware of potential breaking changes to the API. A detailed log of changes can be found in
[changelog.md](changelog.md) as well as the releases section of the GitHub repository page.

The `main` branch is used for _ZenKit_ development and contains potentially breaking changes without any kind of
warning. Each minor version of _ZenKit_ will get its own branch (e.g. `v1.0`). Within these branches API stability is
guaranteed and patches will be merged into them as required. Patches will be backported to the last minor as well (i.e.
if `v1.3.4` is a bugfix-release, its contents will be backported to `v1.2.*` but not `v1.1.*` or any previous version).

## Licensing

While the source code of _ZenKit_ is licensed under the [MIT license](license.md), the
Expand Down

0 comments on commit 3fdaeb4

Please sign in to comment.