0
0
mirror of https://github.com/sp-tarkov/server.git synced 2025-02-13 08:30:44 -05:00

25 Commits

Author SHA1 Message Date
4afc2f5c96
Development Strict Mode (#1006)
- Enables TS strict mode
- Adds script to check types
- Adds workflow to run check-type script
- Updates the code-checking workflows to share the same set-up job

This updates the `tsconfig.json` option to enable strict mode.
*However*, we use TSX for development and SWC for release, which do not
type-check, so this option only gives additional linting/visual-feedback
in VSCode.

Additionally, I've added a NPM script `npm run lint:types` and a GitHub
workflow that runs it.

**This depends on #1005.**

---------

Co-authored-by: Chomp <27521899+chompDev@users.noreply.github.com>
2024-12-30 09:13:15 +00:00
995a3d0c5a
Updates to Node v22.12.0 LTS (#1005)
- Updates version numbers in `.nvmrc`, `package.json`, and
`Server.code-workspace`
- Updates `@yao-pkg/pkg`, `@yao-pkg/pkg-fetch`, and `@types/node` to
latest
- Updates JSON import to FS read operation in `gulpfile.mjs`
- Updates node build target in `gulpfile.mjs`

Tested with local runs, Windows builds, and Linux builds. Have not
tested a Windows build on Linux, but see no reason it wouldn't work.
*[knocks on wood]*

I feel this is safe to merge.
2024-12-30 09:01:11 +00:00
0c7d6a7bb2
Update git link for cloning (#991) 2024-12-20 20:29:24 +00:00
6c9e4fd0bb
Custom LFS Sever (#970)
We've created our own Git Large File Storage (LFS) server due to the
excessive cost of GitHub's bandwidth. Did you know all of their Ethernet
cables are actually gold coated diamonds?

This PR reverses the work done in #954 to compress large location JSON
files into a 7zip archive and handle the (de)compression of the archive.

Only JSON files within the `project/assets/database/` directory that are
larger than 5MB have been included in LFS. This translates to all of the
`looseLoot.json` files. The rest are small enough to be included in the
base repo.

A `.lfsconfig` file has been added to the root of the project to alert
git to the presence of the custom LFS server. This public server is
read-only. Write access is only available to developers within the
Single Player Tarkov GitHub organization.

<img
src="https://github.com/user-attachments/assets/7ddfec9b-5a9a-42e6-806d-fd419e4eaa4f"
width="250">
2024-12-06 13:56:05 +00:00
f55861528a
Compress Database Location Files (#954)
Due to LFS storage issues... This PR removes all current LFS files (the
location loot files) and replaces them with a single 7-zip archive. The
archive is stored in LFS, but has decreased in size by roughly 95%.

The location `.json` files are now git-ignored.

There are two new npm commands to aid in working with the archive:
- `npm run database:compress`  
Compresses the JSON files into an archive *which can be committed into
the project*.
- `npm run database:decompress`  
Decompresses the archive into the original JSON files located in the
working directory.

The gulp file that handles builds has been updated to ensure that the
archive files are *always* used when a build is processed, regardless of
if the JSON files are already present in the working directory.
2024-11-28 15:51:53 +00:00
Chomp
4b9c02e441 Fixed typo in readme 2024-11-27 09:39:54 +00:00
058ed22fe5
README Version Number Updates 2024-11-26 09:50:34 -05:00
a5fa7eb849
Updates README Branch Information 2024-07-24 11:50:07 -04:00
ed8dbbd195 Adds Biome - Removes ESLint & Prettier (!383)
Boogidy, boogidy, boogidy. Let's go racing! 🏎️

Removes the over-complicated and super-slow setup we had with ESLint & Prettier in favour of Biome. The largest change with the formatting is moving from Allman braces to 1TBS braces. Other than that, it's *pretty much* the same. Ah, and that Biome runs formatting and linting on the entire project about x10 faster than the old system ran formatting on one file. Seriously, the guy who came up with that last solution should be fired. :runs:

I've kept all of the formatting and linting commands the same as before, with the main mamma-jamma being: `npm run format`, which applies formatting and linting changes to the entire project.

Formatting-on-save works (quickly!) by (1) ensuring that you're working within the VSC workspace (as you should be), and (2) have the recommended Biome VSC extension installed. The link to the Biome extension is in the README.

This limits our options on code formatting going forward; Biome, like prettier, is very opinionated with very few formatting options available. But I see this as a good thing. I'd rather spend my time arguing about which gun in Tarkov is the best, rather than coding brace styles...

...It's the TOZ, and it always will be. Don't DM me.

Co-authored-by: chomp <chomp@noreply.dev.sp-tarkov.com>
Reviewed-on: SPT/Server#383
Co-authored-by: Refringe <me@refringe.com>
Co-committed-by: Refringe <me@refringe.com>
2024-07-22 21:15:57 +00:00
Dev
59fd030c98 Revert "Updated server node version to 20.14.0 from 20.11.1"
This reverts commit f672ad27bfc1b001e94867fffe8ad5da2d051712.
2024-06-03 17:34:22 +01:00
Dev
f672ad27bf Updated server node version to 20.14.0 from 20.11.1 2024-06-03 15:50:27 +01:00
Dev
37b6342528 Updated readme 2024-05-21 19:05:12 +01:00
79781ab8bb Linting Updates (!336)
This update now runs Prettier before ESLint (with the Stylistic plugin) for code formatting. This takes care of a lot of the edge cases that ESLint doesn't touch by itself. Also adds the `eslint-plugin-unused-imports` ESLint plugin to remove unused imports and the `eslint-plugin-switch-allman` ESLint plugin to enforce Allman braces on case declarations.

The VSCode format-on-save function now requires two additional extentions to be installed: Prettier and Format Code Action. Links can be found in the README and in the recommended extentions section of VSCode when the workspace is open.

Co-authored-by: chomp <chomp@noreply.dev.sp-tarkov.com>
Reviewed-on: SPT-AKI/Server#336
Co-authored-by: Refringe <me@refringe.com>
Co-committed-by: Refringe <me@refringe.com>
2024-05-16 08:41:05 +00:00
c601391da4
Fixes Markdown Formatting 2024-05-07 13:37:01 -04:00
6921f9363d
Code Styling Changes
- Drops DPrint
- Drops Biome
- Adds ESList Stylistic
- Updates ESLint config to new FlatConfig format
- Removed the `dprint.dprint` and `biomejs.biome` VSC extentions from the recommendations list
- Updates README to reflect all the above changes

TODO: Import sorting & minor fixes after `npm run lint:fix`.

Curse you, Alex!
2024-05-06 02:36:35 -04:00
fbf1d7f7fb Updates Server README (!306)
- Updates the Server project README to include additional information about installation, development, and contribuation guidelines.
- Moves the feature list to a dedicated FEATURE.md file (linked from the README.md).
- Reviewed the FEATURES.md file to clean it up a little bit.

Reviewed-on: SPT-AKI/Server#306
Co-authored-by: Refringe <me@refringe.com>
Co-committed-by: Refringe <me@refringe.com>
2024-04-25 17:26:47 +00:00
5edba7dd05 Updates NPM Packages - Node v20.11.1 LTS (!260)
Updates many of the out of date npm packages and brings us up to Node v20 LTS. :D

Co-authored-by: chomp <chomp@noreply.dev.sp-tarkov.com>
Reviewed-on: SPT-AKI/Server#260
Co-authored-by: Refringe <me@refringe.com>
Co-committed-by: Refringe <me@refringe.com>
2024-03-14 09:08:40 +00:00
Dev
eeaa593ea4 Update node version in readme 2024-01-03 21:50:36 +00:00
Dev
40ea0735ef Update readme 2023-12-18 14:20:37 +00:00
Dev
a657e66917 Update readme 2023-12-04 15:13:48 +00:00
Dev
42f3e52ded Update readme 2023-10-12 15:12:55 +01:00
0b67a9a0e9 0.13.5.0 (!147)
Co-authored-by: Dev <dev@dev.sp-tarkov.com>
Co-authored-by: Terkoiz <terkoiz@noreply.dev.sp-tarkov.com>
Co-authored-by: TheSparta <thesparta@noreply.dev.sp-tarkov.com>
Co-authored-by: Refringe <refringe@noreply.dev.sp-tarkov.com>
Co-authored-by: Kaeno <e>
Reviewed-on: SPT-AKI/Server#147
2023-10-10 11:03:20 +00:00
Dev
510972a996 Update readme 2023-03-14 10:44:45 +00:00
Dev
3d849b427b Squashed 22 commits in an attempt to fix Gitea object bloat 2023-03-05 22:02:56 +02:00
Dev
e1310d74ca Add Repo 2023-03-03 15:23:46 +00:00