Kir_Antipov
5e957f45ba
Presented ability to parse and use version ranges
2023-05-17 15:47:39 +03:00
Kir_Antipov
4bbd4cc2d9
Version
refactoring
2023-05-17 15:46:26 +03:00
Kir_Antipov
17bc59ff61
VersionType
refactoring
2023-05-17 15:45:22 +03:00
Kir_Antipov
5381af88ee
Added io
module
2023-05-17 15:41:39 +03:00
Kir_Antipov
b9dc319a1e
File
(-> FileInfo
) refactoring
2023-05-17 15:41:18 +03:00
Kir_Antipov
79519efc22
Made a few utility types for writeFile
options
2023-05-17 15:39:27 +03:00
Kir_Antipov
88b6d0607a
Made a few utility types for readFile
options
2023-05-17 15:39:07 +03:00
Kir_Antipov
49ccf5b5a2
Made a few FilePath
-like utility types
2023-05-17 15:38:21 +03:00
Kir_Antipov
3367d6a02d
This *generates* warnings for auto-*generated* content
...
*Did you get it?*
2023-05-17 15:35:47 +03:00
Kir_Antipov
cc3f33cdb2
Made a module focused on conversion
2023-05-17 15:33:21 +03:00
Kir_Antipov
9d7bf0f627
Moved sleep
and retry
to async-utils
...
Also, made a few more helper methods
2023-05-17 15:31:47 +03:00
Kir_Antipov
9ca1e9f0d9
Moved FailMode
to its own file
2023-05-17 15:29:47 +03:00
Kir_Antipov
5a2e5f176c
Added enum
module
2023-05-17 15:25:02 +03:00
Kir_Antipov
64f717d127
Implemented Object
-like Enum
interface
2023-05-17 15:24:43 +03:00
Kir_Antipov
5fe6c0ba36
Implemented DynamicEnum
2023-05-17 15:23:26 +03:00
Kir_Antipov
8e382c9ed5
Defined default enum separators
2023-05-17 15:22:24 +03:00
Kir_Antipov
a2288eeefa
Made a function to retrieve enum entries
2023-05-17 15:19:44 +03:00
Kir_Antipov
003f5fbab4
Made a function to retrieve enum values
2023-05-17 15:19:17 +03:00
Kir_Antipov
1d0d5c6cff
Made a function to retrieve enum keys
2023-05-17 15:12:25 +03:00
Kir_Antipov
0a98e5a66a
Added enum/descriptors
module
2023-05-17 15:09:55 +03:00
Kir_Antipov
1afbf2483e
Implemented enum descriptor instantiation logic
2023-05-17 15:09:26 +03:00
Kir_Antipov
41d4de590e
Implemented enum descriptor for string enums
2023-05-17 15:04:39 +03:00
Kir_Antipov
e16de98226
Implemented enum descriptor for boolean enums
2023-05-17 14:56:15 +03:00
Kir_Antipov
874b950fdf
Implemented enum descriptor for bigint enums
2023-05-17 14:55:42 +03:00
Kir_Antipov
6256d33db6
Implemented enum descriptor for number enums
2023-05-17 14:55:09 +03:00
Kir_Antipov
33da1eacff
Made base interface for enum descriptors
2023-05-17 14:53:50 +03:00
Kir_Antipov
8db475ab28
Added reflection
module
2023-05-16 20:39:48 +03:00
Kir_Antipov
ccd4319b20
Made ImportDirective
for dynamic import purposes
2023-05-16 20:39:20 +03:00
Kir_Antipov
491aa11ac5
Made ModuleLoader
interface
...
And added 2 default implementations:
- `NODE_MODULE_LOADER` - uses `import` under the hood
- `DYNAMIC_MODULE_LOADER` - will be able to load modules needed in other parts of this project. Currently it's just a stub
2023-05-16 20:37:39 +03:00
Kir_Antipov
fd2975b30b
Implemented more reflection-specific helpers
2023-05-16 20:34:43 +03:00
Kir_Antipov
919bc5d68e
Added errors
module
2023-05-16 20:30:15 +03:00
Kir_Antipov
c566a4cfec
Implemented HttpError
2023-05-16 20:28:31 +03:00
Kir_Antipov
3f8d7d2115
Made SoftError
for recoverable errors
2023-05-16 20:26:09 +03:00
Kir_Antipov
3fe2a3fdc9
Made a helper method to check if an object is an error
2023-05-16 20:25:04 +03:00
Kir_Antipov
5892ef60d8
Implemented FileNotFoundError
2023-05-16 20:23:02 +03:00
Kir_Antipov
8f97d4aee6
Implemented ArgumentNullError
2023-05-16 20:21:45 +03:00
Kir_Antipov
ab8f3468ca
Implemented ArgumentError
2023-05-16 20:20:55 +03:00
Kir_Antipov
c56b60c966
Added security
module
2023-05-16 20:17:55 +03:00
Kir_Antipov
2243945d3a
Made a class that protects a string from being exposed
2023-05-16 20:17:23 +03:00
Kir_Antipov
a656c86e4a
Added collections
module
2023-05-16 20:09:53 +03:00
Kir_Antipov
fc0a818902
Made ArrayMap
and MultiMap
...
`ArrayMap` is a map implementation which can use custom equality comparers
`MultiMap` is mostly an alias for `Map<K, V[]>`, but with some extra methods
2023-05-16 20:09:20 +03:00
Kir_Antipov
bddf78c669
Made ArraySet
...
A set implementation which can use custom equality comparers
2023-05-16 20:07:37 +03:00
Kir_Antipov
97a17208b2
Implemented array-like methods for iterables
2023-05-16 20:06:09 +03:00
Kir_Antipov
af85b577f1
Made an interface for all key-value iterables out there
2023-05-16 20:02:22 +03:00
Kir_Antipov
e3439aa021
Added types
module
2023-05-16 19:58:58 +03:00
Kir_Antipov
67b5bcbf85
Made an alias for Partial<Record<K, V>>
2023-05-16 19:57:41 +03:00
Kir_Antipov
1967a52df9
Added a type that unwraps constructor parameters
2023-05-16 19:56:28 +03:00
Kir_Antipov
e473e4b641
Made a type to help me use generics as record keys
2023-05-16 19:54:56 +03:00
Kir_Antipov
2c2bcb4de7
Added a type that unwraps constructor return type
2023-05-16 19:53:51 +03:00
Kir_Antipov
f436b151aa
Added a type that unwraps promises
2023-05-16 19:52:48 +03:00
Kir_Antipov
6e27f6c851
Made a type to indicate that await
should be used
2023-05-16 19:51:43 +03:00
Kir_Antipov
09d0d25fdc
Made a type that converts unions to intersections
2023-05-16 19:49:38 +03:00
Kir_Antipov
2ab31e0c32
Made a transpile-time version of typeof
2023-05-16 19:48:37 +03:00
Kir_Antipov
13a303ce8d
Added logging
module
2023-05-16 19:45:41 +03:00
Kir_Antipov
d60d8f63f3
LoggingStopwatch
refactoring
2023-05-16 19:45:06 +03:00
Kir_Antipov
0cf4831003
Added diagnostics
module
2023-05-16 19:43:36 +03:00
Kir_Antipov
d1b07fe763
Stopwatch
refactoring
2023-05-16 19:42:49 +03:00
Kir_Antipov
a33f82afe1
Updated logger instantiation logic
2023-05-16 19:40:10 +03:00
Kir_Antipov
d043e7f23f
Added a logger that writes logs to stdout
2023-05-16 19:38:46 +03:00
Kir_Antipov
19993c6f5b
Added a logger that writes logs to the console
2023-05-16 19:37:21 +03:00
Kir_Antipov
65cb51a963
Implemented classic NullLogger
2023-05-16 19:35:58 +03:00
Kir_Antipov
9b882c411e
Made helper methods to work with environment
2023-05-16 19:31:41 +03:00
Kir_Antipov
f1bd102e19
Added comparison
module
2023-05-16 19:27:13 +03:00
Kir_Antipov
ef099bc69f
Implemented default equality comparers for strings
2023-05-16 19:26:36 +03:00
Kir_Antipov
c6214a811a
Made some helper methods to work with strings
2023-05-16 19:24:54 +03:00
Kir_Antipov
89d56de5e4
Implemented default comparers for strings
2023-05-16 19:22:08 +03:00
Kir_Antipov
d1b1ed9a16
Implemented comparers
2023-05-16 19:20:11 +03:00
Kir_Antipov
a537525099
Implemented equality comparers
2023-05-16 19:18:32 +03:00
Kir_Antipov
ce5227a2ce
Added functions
module
2023-05-16 19:05:13 +03:00
Kir_Antipov
7b75d612db
Now it's possible to create middlewares
2023-05-16 19:04:41 +03:00
Kir_Antipov
63bbe0f72b
Made interfaces for delegates
...
Because built-in `Function` is not flexible
2023-05-16 19:00:09 +03:00
Kir_Antipov
d263c15393
Added a possibility to make objects callable
2023-05-16 18:58:10 +03:00
Kir_Antipov
7882738bce
Added java
module
2023-05-16 18:54:51 +03:00
Kir_Antipov
34f7b1af54
Made a class that represents a Java version
2023-05-16 18:54:19 +03:00
Kir_Antipov
a416c24813
Added text-oriented version of metadata reader
2022-11-25 14:30:52 +03:00
Kir_Antipov
de4393cceb
Removed deprecated metadata-related classes
2022-11-25 14:30:52 +03:00
Kir_Antipov
b7fa4fab67
QuiltModMetadata
refactoring
2022-11-25 14:30:52 +03:00
Kir_Antipov
2fc40453de
ForgeModMetadata
refactoring
2022-11-25 14:30:52 +03:00
Kir_Antipov
9570097d5b
FabricModMetadata
refactoring
...
Fixes #36
2022-11-25 14:30:52 +03:00
Kir_Antipov
5d39b55de2
Changed mapEnumInput
's signature
2022-11-25 14:30:52 +03:00
Cadiboo
81693dea8e
Exclude Javadoc jars from primary files by default ( #18 )
...
* Exclude javadoc jar in code
* Update README.md
Co-authored-by: Kir_Antipov <kp.antipov@gmail.com>
2022-08-21 15:05:25 +03:00
Kir_Antipov
9900786be3
⭐ E M O J I ✨
...
I still don't understand it why everybody likes them so much. But I feel the pressure of public opinion, which forced me to add these useless symbols to my codebase.
2022-07-05 21:07:01 +03:00
Kir_Antipov
f8343090b1
Refactoring
2022-07-05 20:44:29 +03:00
Kir_Antipov
03cc643a6e
Fabric mods can be marked as Quilt-compatible
2022-07-05 19:24:25 +03:00
Kir_Antipov
3f02162129
Added fail-mode
input
2022-07-05 18:08:11 +03:00
Kir_Antipov
58a1f9bab8
Made use of LoggingStopwatch
2022-07-05 18:02:45 +03:00
Kir_Antipov
d097cc8471
Made a logging version of Stopwatch
2022-07-05 17:47:28 +03:00
Kir_Antipov
2483a4d02b
Implemented Stopwatch to simplify measurements
2022-07-05 17:44:29 +03:00
Kir_Antipov
4989430f1a
Changed some declarations from foo.bar
to fooBar
...
It helps with better target-specific options support
2022-07-05 17:07:56 +03:00
Kir_Antipov
f491e136d1
Sequential uploads to GitHub should work now
...
#13
2022-07-05 16:58:56 +03:00
Kir_Antipov
a130a734a5
Changed default publishing order to CurseForge, Modrinth, GitHub
...
Closes #16
2022-07-04 22:52:26 +03:00
Kir_Antipov
235aa3c252
Added support for Modrinth embedded
dependency type
...
Closes #15
2022-07-04 20:23:16 +03:00
Kir_Antipov
4e7886fe22
Made it possible to automatically create GitHub Releases
...
Closes #7
2022-06-07 21:17:45 +03:00
Kir_Antipov
b4d00806ed
Made VersionType
enum
2022-06-07 17:21:26 +03:00
Kir_Antipov
537780acea
Default value should not be overridden
2022-06-07 17:21:06 +03:00
Kir_Antipov
0d76fa5eef
Codestyle fix
2022-06-07 16:12:20 +03:00
Kir_Antipov
38cc76ee30
Added modrinth-unfeature-mode
input
...
Closes #9
2022-06-07 16:08:55 +03:00
Kir_Antipov
1aaf662cc2
Refactored modrinth-utils
2022-06-07 16:02:13 +03:00
Kir_Antipov
36b3d69f46
Implemented mapEnumInput
, so I can extract enums from options
2022-06-07 15:58:13 +03:00
Kir_Antipov
44e418ffe7
Added modrinth-featured
input ( #9 )
2022-06-06 18:17:42 +03:00
Kir_Antipov
24a3f2d11e
Implemented a simpler way to process input data
2022-06-06 18:09:45 +03:00
Kir_Antipov
dc82753d62
Made CurseForge error handling a little bit more verbose
2022-06-05 20:09:34 +03:00
Kir_Antipov
0fcfdc07c1
Implemented Quilt support
...
Closes #5
2022-06-05 19:37:01 +03:00
Fx Morin
bf3f3c7c01
Modrinth Dependencies ( #8 )
...
* temp Modrinth Dependencies
* Fix final issues
* Got to love git sometimes
* Made test case for modrinth-utils
* That's why testing is important kids
* Included dependencies are still dependencies
* Naming
* Moved to Modrinth API v2
Co-authored-by: Kir_Antipov <kp.antipov@gmail.com>
2022-06-05 17:28:41 +03:00
Kir_Antipov
218cc98461
Not so quick quickfix of #6
...
Closes #6
2022-05-31 21:11:04 +03:00
Kir_Antipov
fbda2b1cfe
Added the ability to retry publishing assets
2022-01-12 18:16:19 +03:00
Kir_Antipov
b98fa4496b
[Fix] Sometimes Modrinth uses a wrong file as primary
2022-01-05 17:55:13 +03:00
Kir_Antipov
2194c72c22
Non-existing dependencies should cause a soft failure
2021-12-11 15:59:39 +03:00
Kir_Antipov
af38f88370
I hate the way GitHub Actions process inputs
2021-12-11 15:21:24 +03:00
Kir_Antipov
9fe56c6406
INPUT_CHANGELOG_FILE
exists for some weird reason
2021-12-11 03:18:04 +03:00
Kir_Antipov
7a8b3f6b81
Made aliases for special case dependencies like fabric
2021-12-11 00:12:31 +03:00
Kir_Antipov
7e5abb93bd
Special case dependencies are ignored by default
...
(minecraft, java, fabricloader, forge, etc)
2021-12-10 17:46:10 +03:00
Kir_Antipov
0eea0ed873
The action won't try to publish assets if no token was specified
...
Fixes #2
2021-12-10 17:00:43 +03:00
Kir_Antipov
6e417e8ee2
CurseForgePublisher
makes use of relations
now
...
I hope so...
2021-12-08 16:44:57 +03:00
Kir_Antipov
5e7fd885b0
ModPublisher
can use mod metadata now
2021-12-08 16:42:53 +03:00
Kir_Antipov
cb76b6f43f
Implemented ModMetadataReader for Forge mods
2021-12-07 21:57:22 +03:00
Kir_Antipov
ddc460484e
Implemented ModMetadata for Forge
2021-12-07 21:53:53 +03:00
Kir_Antipov
05a29057ca
Implemented ModMetadataReader for Fabric mods
2021-12-07 21:53:08 +03:00
Kir_Antipov
a63e0b697d
Made ModMetadata implementation for Fabric
2021-12-07 21:52:26 +03:00
Kir_Antipov
0530a4b597
Made base class for dependencies described in configs
2021-12-07 21:50:15 +03:00
Kir_Antipov
8937a5c943
Made base class for config-based metadata
2021-12-07 21:49:28 +03:00
Kir_Antipov
ef28fbd8f5
Made base class for metadata readers that deal with zip
2021-12-07 21:48:52 +03:00
Kir_Antipov
4151c36500
Chained all known ModMetadataReader
s
2021-12-07 21:42:49 +03:00
Kir_Antipov
0844ce3a92
Implemented factory for ModMetadataReader
s
2021-12-07 21:40:57 +03:00
Kir_Antipov
98e5542fe5
Made interface for metadata readers
2021-12-07 21:37:21 +03:00
Kir_Antipov
bd5a30326c
Made interface that describes mod metadata
2021-12-07 21:35:41 +03:00
Kir_Antipov
428bc335e9
Made Dependency interface
2021-12-07 21:35:03 +03:00
Kir_Antipov
f6c5dfd62b
Added enum that describes dependency kinds
2021-12-07 21:34:24 +03:00
Kir_Antipov
59f286e65e
Made enum that describes different mod loaders
2021-12-07 21:32:27 +03:00
Kir_Antipov
07fccebe08
Moved File
to file.ts
, made version-utils.ts
2021-12-06 16:07:13 +03:00
Kir_Antipov
ffa0520996
Moved publishers to corresponding subfolders
2021-12-06 16:02:50 +03:00
Kir_Antipov
90929a7f48
Made method that parses Minecraft version
...
...from version name
2021-12-06 15:52:15 +03:00
Kir_Antipov
28b0fcda55
name
can be omitted with an empty string
2021-10-01 16:35:51 +03:00
Kir_Antipov
fcfbc7c0f9
Added version-resolver
input
2021-10-01 16:13:08 +03:00
Kir_Antipov
bc45e09dbd
Refactoring: made options
an argument instead of a property
2021-09-30 17:01:53 +03:00
Kir_Antipov
89b49fca88
Fixed Modrinth's primary file detection
2021-09-26 22:31:30 +03:00
Kir_Antipov
b3b5a975fb
Added unused dependencies
property -_-
2021-09-26 20:27:57 +03:00
Kir_Antipov
e07b3d5c99
Added more details to the error message
2021-09-26 20:06:04 +03:00
Kir_Antipov
5bc986e4cc
modrinth
lib doesn't really work
2021-09-26 19:53:00 +03:00
Kir_Antipov
810ff6d7dd
There're some weird predefined inputs
2021-09-26 19:33:39 +03:00
Kir_Antipov
d8d4fd16a8
Fixed GitHubPublisher
2021-09-26 19:30:44 +03:00
Kir_Antipov
9101916d52
Implemented action's entry point
2021-09-25 09:39:19 +03:00
Kir_Antipov
f73c20d76f
Made factory for the different publishers
2021-09-25 09:39:19 +03:00
Kir_Antipov
22df1b7930
Implemented Modrinth publisher
2021-09-25 09:39:19 +03:00
Kir_Antipov
6c9bd908cc
Implemented CurseForge publisher
2021-09-24 17:08:51 +03:00
Kir_Antipov
b6f396ffd8
Made base class for CurseForge and Modrinth publishers
2021-09-24 15:14:27 +03:00
Kir_Antipov
0db63f3275
Implemented GitHub publisher
2021-09-24 14:58:19 +03:00
Kir_Antipov
59eb2bc7e7
Made base class for publishers
2021-09-24 14:53:46 +03:00
Kir_Antipov
27004e5242
Made utils for interacting with the CurseForge API
2021-09-23 16:22:46 +03:00
Kir_Antipov
e38f6957c3
Made utils for working with Minecraft versions
2021-09-23 13:37:33 +03:00
Kir_Antipov
7cc8951c69
Made getInputAsObject
method that transforms action inputs into an object
2021-09-22 19:28:22 +03:00
Kir_Antipov
3a5369791a
Made utils for working with files
2021-09-22 19:20:00 +03:00
Kir_Antipov
34b6c9b16e
Made logger interface
2021-09-22 16:21:12 +03:00