Compile dependencies are placed on the runtime classpath by Gradle.
Because the compile configuration is set to extend from the provided
config, all of those dependencies are put on the runtime classpath as
well.
In this patch, provided is instead made a separate configuration, and
explicitly added to ONLY the compile classpath of the main sourceset.
Using the default Gradle install on Travis is dangerous, because a
version upgrade on their end could break the build. It's already broken
because the version of ForgeGradle the current script relies on expects
ScalaCompileOptions.setUseAnt to exist, but it was removed in Gradle 3.
This patch reconfigures Travis to use the Gradle wrapper instead, which
standardizes the version in use.
* Added tier 1 wireless card as discussed in #2562
* Update lang/doc files
Remove unneeded component callback override
Add alias for old wlanCard name
* Moved wired and wireless max ports into one array
Added tested OreDict entry for wlanCard
* Bump version number for config updates
Fix typo in config comment
Fixes#2649. Explanation:
* Other mods can integrate with us by implementing the SimpleComponent
interface. They annotate its methods with @Optional to avoid a hard
dependency on us.
* Our mod ID changed from "OpenComputers" in 1.10 to "opencomputers" in 1.11.
* Some mods (like RFTools) can't refer to our mod by the right-case mod ID,
because the same .jar works on both 1.10 and 1.11.
* In most cases, using the wrong-case mod ID would just mean that integration
wouldn't work, but for us, it causes a crash.
* The crash is because we use ASM to inject some extra methods and make the
class implement a different interface. This means that if the @Optional mod
ID is wrong, our new interface will still be there but some of the original
methods won't, which leads to AbstractMethodErrors like McJty/RFTools#1466.
* Forge looks for the @Optional annotations before our coremod can do
anything, so we can't just remove them from the class. Instead, we need to
remove them from Forge's internal list.
I think it quite a reasonable drone design to allow a tier 2 drone to have
1. navigation upgrade (waypoints)
2. chunk loader (for traveling safely)
3. inventory upgrade (to cary and drop items)
closes#2043