RELEASE.md
Path of Building Community follows Semantic Versioning.
Releases are done via GitHub actions in order to simplify release note generation.
Steps:
python3 update_manifest.py --in-place from the root directory of PoBgit tag v2.4.0; git push --tagsmaster. PoB will take a few minutes before it can find the updateUpdating data from the GGPK uses the PoB exporter (see CONTRIBUTING.md#exporting-ggpk-data-from-path-of-exile). Run each script in order, then check the differences in data to make sure nothing is missing that is expected.
Skill tree updates require JSON data, usually released by GGG a few days before a new
league starts, in forum posts like
this one.
The JSON data and required skill tree assets should come in a .zip archive.
Steps:
.zip archive../src/TreeData with the following schema:
<major_league_version>_<minor_league_version>. For alternate or ruthless trees, add the suffixing as appropriate.
For 3.14, the correct directory name would be 3_14.
For 3.25 Ruthless 'alternate' tree, the correct directory name would be 3_25_ruthless_alternate..zip archive root to the new directory:
data.json.
Note for Ruthless for example, the exported data from GGG will be ruthless.json, and this file should be copied into the new directory and renamed to data.json for the following steps to pick it up.assets subdirectory in the .zip archive to the
new directory:
mastery-active-effect-3.pngmastery-active-selected-3.pngmastery-connected-3.pngmastery-disabled-3.pngskills-3.jpgskills-disabled-3.jpg../fix_ascendancy_positions.py../src/GameVersions.lua and update treeVersionList, treeVersions, and poePlannerVersions. The latter can be found via https://cdn.poeplanner.com/json/versions.json
according to the file's format. This is important, otherwise the JSON data converter
won't trigger.tree.lua.data.json and sprites.json from the new directories. Do not commit these files.The Timeless jewels determine what effect they have on a node based on the "Look up Tables" in \src\Data\TimelessJewelData The LuTs for the Timeless jewels come from https://github.com/Regisle/TimelessJewelData More information can be found there.
The LuTs PoB uses are slightly different due to historical reasons, and so they can be generated using the generator from there.
Steps to Generate Timeless Jewel LuTs for PoB:
If updated this way making a PR to https://github.com/Regisle/TimelessJewelData with the files in the format it uses is appreciated. To do this follow steps 1-5 the same and choose the other option for step 6.
Path of Building Community offers both installable and standalone releases. They're built with automation scripts found in the repository described below.
Prerequisites:
git in your PATH.
Verify by running git --version.makensis in your PATH.
Verify by running makensis /version.
You may have to add this manually after installation.python in your PATH.
Verify by running python --version.Installation:
Clone this repository to a directory of your choice:
git clone https://github.com/PathOfBuildingCommunity/PathOfBuildingInstaller.git
Please note that you might not have access to this repository if you're not a Path of Building Community maintainer.
Usage:
python make_release.py
To change the output folder or repository URL, simply edit the script file.
Created installers can be found in the ./Dist directory.
NB: Output like the following can be safely ignored. This is due to NSIS complaining about including an empty directory.
AppData\Local\Temp\tmp5fo1ha19\Update -> no files found. (NSIS/Setup.nsi:158)