[TIMOB-23830] Android: Unable to build native module with name that starts with number
GitHub Issue | n/a |
---|---|
Type | Bug |
Priority | High |
Status | Open |
Resolution | Unresolved |
Affected Version/s | Release 5.5.0 |
Fix Version/s | n/a |
Components | Android, Tooling |
Labels | cb-tooling, engSchedule |
Reporter | Chris Barber |
Assignee | Chris Barber |
Created | 2016-08-26T05:07:15.000+0000 |
Updated | 2019-09-24T15:53:17.000+0000 |
Description
Can't build a module for Android with a name of "123abc". You can create it just fine. It builds just fine for iOS, however on Android, the name is used to declare the Java class for the module and class names in Java can't start with a number.
TiSDK master PR: https://github.com/appcelerator/titanium_mobile/pull/8273 TiSDK 6_0_X PR: https://github.com/appcelerator/titanium_mobile/pull/8274
Module build on master and 6_0_X branches are broken, I'm getting following build error:
We need to wait for TIMOB-23801 before we can test/merge this.
Now I'm seeing this:
*Steps to reproduce:* 1. create a module, name
123abc
, idcom.test.app
2. doti build \-p android
without--build-only
flag 3. module is built, follow by running the example project 4. the example project failed to run[~cbarber] The PR is marked for 6.0.0, but this ticket isn't. Please update one of both, thx!
[~hansknoechel] This ticket and PR will NOT go in 6.0.
[~hknoechel] Nope. Maybe 7.1 or 7.2.
[~fmiao] [~gmathews] Can you code review this? [~cbarber] The PR has merge conflicts.
[~hknoechel] I'm not certain the PRs are valid. How we generate and use the module names and ids is a disaster. Some places we strip all special characters. Some places we camel case. When the module build was ported over, some wires got crossed and the module name is used for the module id and vice versa. What I'm saying is how the module build handles names and ids needs to be completely reviewed and that includes support for names that start with a number.
I'm failing the review of this PR since this PR is so old and I'm not certain it is valid.