CraftSim

CraftSim

2M Downloads

pkgmeta has ancient URLs

Myrroddin opened this issue ยท 6 comments

commented

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.

commented

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! ๐Ÿ˜Š

commented

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.

commented

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
commented

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>
commented

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.

commented

Thank you for the heads up!
Didnt even know the ace libraries need a specific load order..