Compare commits

...

5 Commits

Author SHA1 Message Date
Stefano
75539d90b1
Merge 2ad4faa762 into 6aaeeff9a4 2024-11-19 21:40:42 +09:00
Daniel Scalzi
6aaeeff9a4
Update comment. 2024-11-12 15:14:59 -05:00
Daniel Scalzi
9cca37ca8a
Fix issue with submodule library overrides. (#366) 2024-11-12 14:48:55 -05:00
Stefano
2ad4faa762
Update README.md 2024-02-24 00:50:11 +01:00
Stefano
5576f58933
Update README.md 2024-02-24 00:49:15 +01:00
2 changed files with 19 additions and 13 deletions

View File

@ -185,6 +185,18 @@ For instructions on setting up Microsoft Authentication, see https://github.com/
--- ---
# Third Party Setup Services
Everything above might seem scary, some people may not know how to setup [Nebula][nebula] or how to get a project up and running with automatic updates. You can use a third party setup service.
> [!CAUTION]
> These services are not affiliated with us, and we cannot guarantee their quality. They may charge you a fee for creating a launcher for you, so please make sure you agree on the terms and conditions before hiring them. Also, be aware that using a third party service may expose you to risks such as unauthorized access, data loss, or malware. We are not responsible for any damages or losses that may result from using a third party service. Please do your own research and use these people at your own risk.
| Setup Provider | Monthly Maintanance | One-Time Creation | Nebula Cloud Hosting |
| :---: | :---: | :---: | :---: |
| [Codixer](https://discord.gg/AE6ZsDe48s) | ✅💵 | ✅💵 | ✅💵 |
---
## Resources ## Resources
* [Wiki][wiki] * [Wiki][wiki]

View File

@ -839,22 +839,18 @@ class ProcessBuilder {
libs[mdl.getVersionlessMavenIdentifier()] = mdl.getPath() libs[mdl.getVersionlessMavenIdentifier()] = mdl.getPath()
if(mdl.subModules.length > 0){ if(mdl.subModules.length > 0){
const res = this._resolveModuleLibraries(mdl) const res = this._resolveModuleLibraries(mdl)
if(res.length > 0){
libs = {...libs, ...res} libs = {...libs, ...res}
} }
} }
} }
}
//Check for any libraries in our mod list. //Check for any libraries in our mod list.
for(let i=0; i<mods.length; i++){ for(let i=0; i<mods.length; i++){
if(mods.sub_modules != null){ if(mods.sub_modules != null){
const res = this._resolveModuleLibraries(mods[i]) const res = this._resolveModuleLibraries(mods[i])
if(res.length > 0){
libs = {...libs, ...res} libs = {...libs, ...res}
} }
} }
}
return libs return libs
} }
@ -863,27 +859,25 @@ class ProcessBuilder {
* Recursively resolve the path of each library required by this module. * Recursively resolve the path of each library required by this module.
* *
* @param {Object} mdl A module object from the server distro index. * @param {Object} mdl A module object from the server distro index.
* @returns {Array.<string>} An array containing the paths of each library this module requires. * @returns {{[id: string]: string}} An object containing the paths of each library this module requires.
*/ */
_resolveModuleLibraries(mdl){ _resolveModuleLibraries(mdl){
if(!mdl.subModules.length > 0){ if(!mdl.subModules.length > 0){
return [] return {}
} }
let libs = [] let libs = {}
for(let sm of mdl.subModules){ for(let sm of mdl.subModules){
if(sm.rawModule.type === Type.Library){ if(sm.rawModule.type === Type.Library){
if(sm.rawModule.classpath ?? true) { if(sm.rawModule.classpath ?? true) {
libs.push(sm.getPath()) libs[sm.getVersionlessMavenIdentifier()] = sm.getPath()
} }
} }
// If this module has submodules, we need to resolve the libraries for those. // If this module has submodules, we need to resolve the libraries for those.
// To avoid unnecessary recursive calls, base case is checked here. // To avoid unnecessary recursive calls, base case is checked here.
if(mdl.subModules.length > 0){ if(mdl.subModules.length > 0){
const res = this._resolveModuleLibraries(sm) const res = this._resolveModuleLibraries(sm)
if(res.length > 0){ libs = {...libs, ...res}
libs = libs.concat(res)
}
} }
} }
return libs return libs