pkgmeta has ancient URLs
Myrroddin opened this issue ยท 6 comments
I was looking around randomly and noticed that your pkgmeta is looking at wowace URLs for the Ace3 libraries. This has not been correct for years, even though the main Ace3 Description page has not been updated. What you want to use is https://repos.curseforge.com/wow/ace3/trunk
as seen by clicking the Source link.
For example, the correct path is Libs/AceAddon-3.0: https://repos.curseforge.com/wow/ace3/trunk/AceAddon-3.0
Looking at wowace resolves to dead URLs that do not exist, at least for repository links.
Another error in the pkgmeta is the first line in the ignore section. You should never ignore - Libs/LibStub.lua
because LibStub should always be included with every project that uses it. It is fine to ignore the tests
child folders; those are not necessary.
You're welcome. Think of it this way: you were trying to load AceEvent before AceAddon, and then trying to use AceEvent, but both would fail because LibStub wasn't loaded first. Then AceEvent would fail again because CallbackHandler was not available. That is like trying to start a car followed by putting the key into the ignition, which won't work. You need to put the key into the ignition first, then start the car! ๐
I'm sorry for this, but I missed a backslash in the pkgmeta, which is causing a commit failure. It was on the AceAddon-3.0 line, which I fixed above.
The corrected pkgmeta looks like the following. Note that I also corrected the load order of the external libraries.
package-as: CraftSim
enable-nolib-creation: no
externals:
Libs/LibStub: https://repos.curseforge.com/wow/libstub/trunk
Libs/CallbackHandler-1.0: https://repos.curseforge.com/wow/callbackhandler/trunk/CallbackHandler-1.0
Libs/AceAddon-3.0: https://repos.curseforge.com/wow/ace3/trunk/AceAddon-3.0
Libs/AceEvent-3.0: https://repos.curseforge.com/wow/ace3/trunk/AceEvent-3.0
Libs/AceDB-3.0: https://repos.curseforge.com/wow/ace3/trunk/AceDB-3.0
Libs/AceComm-3.0: https://repos.curseforge.com/wow/ace3/trunk/AceComm-3.0
Libs/AceSerializer-3.0: https://repos.curseforge.com/wow/ace3/trunk/AceSerializer-3.0
Libs/LibCompress: https://repos.curseforge.com/wow/libcompress/trunk
Libs/LibDBIcon-1.0: https://repos.curseforge.com/wow/libdbicon-1-0/trunk
Libs/GUTIL:
url: https://github.com/derfloh205/GUTIL.git
tag: 2.0
Libs/GGUI:
url: https://github.com/derfloh205/GGUI.git
tag: 2.1
ignore:
- Libs/LibStub/tests
- Libs/**/*.textile
- README.md
Here is the corrected embeds.xml which follows Ace3.toc's load order, because the Ace3 libraries depend on each other being loaded in a specific order.
<Ui xsi:schemaLocation="http://www.blizzard.com/wow/ui/ ..\FrameXML\UI.xsd">
<Script file="Libs\LibStub\LibStub.lua"/>
<Include file="Libs\CallbackHandler-1.0\CallbackHandler-1.0.xml"/>
<Include file="Libs\AceAddon-3.0\AceAddon-3.0.xml"/>
<Include file="Libs\AceEvent-3.0\AceEvent-3.0.xml"/>
<Include file="Libs\AceDB-3.0\AceDB-3.0.xml"/>
<Include file="Libs\AceComm-3.0\AceComm-3.0.xml"/>
<Include file="Libs\AceSerializer-3.0\AceSerializer-3.0.xml"/>
<Include file="Libs\LibDBIcon-1.0\embeds.xml"/>
<Include file="Libs\LibDBIcon-1.0\LibDBIcon-1.0\lib.xml"/>
<Include file="Libs\LibCompress\lib.xml"/>
<Include file="Libs\GUTIL\lib.xml"/>
<Include file="Libs\GGUI\lib.xml"/>
<Include file="Libs\classic.lua"/>
</Ui>
I would have created a Pull Request for these, except I have never created a PR before and didn't want to screw it up; therefore, I pasted the corrections directly as formatted text to the issue.