You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cordova.apache.org by "Christoph Jerolimov (JIRA)" <ji...@apache.org> on 2012/09/12 22:23:08 UTC

[jira] [Created] (CB-1453) CLONE - Namespace issue of JSONKit and other external libraries

Christoph Jerolimov created CB-1453:
---------------------------------------

             Summary: CLONE - Namespace issue of JSONKit and other external libraries
                 Key: CB-1453
                 URL: https://issues.apache.org/jira/browse/CB-1453
             Project: Apache Cordova
          Issue Type: Bug
          Components: iOS
    Affects Versions: 1.9.0
         Environment: iOS
            Reporter: Christoph Jerolimov
             Fix For: 2.1.0


jk_collectionClassLoadTimeInitialization should also be prefixed

Other external libraries such as NSData+Base64 can cause duplicating symbols as well

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (CB-1453) Namespace issue of JSONKit (JSONKitSerializingBlockAdditions)

Posted by "Shazron Abdullah (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CB-1453?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13454383#comment-13454383 ] 

Shazron Abdullah commented on CB-1453:
--------------------------------------

Are you looking at the right source? I see that Category as already namespaced in the source:
https://github.com/apache/incubator-cordova-ios/blob/26a5b13ad3f08c3e4a7d4dc75b0a24d866d25323/CordovaLib/Classes/JSON/JSONKit.h#L237-240

The only issue I see is that it is prefixed cdv instead of cdvjk - but it should be harmless.



 
                
> Namespace issue of JSONKit (JSONKitSerializingBlockAdditions)
> -------------------------------------------------------------
>
>                 Key: CB-1453
>                 URL: https://issues.apache.org/jira/browse/CB-1453
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: iOS
>    Affects Versions: 2.1.0
>         Environment: iOS
>            Reporter: Christoph Jerolimov
>
> In CB-1000 you've changed the namespace handling for the included library. But you missed this Category. So the build run still into duplicate warnings:
> {code}
> @interface NSDictionary (JSONKitSerializingBlockAdditions)
> - (NSData *)JSONDataWithOptions:(JKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
> - (NSString *)JSONStringWithOptions:(JKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
> @end
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (CB-1453) Namespace issue of JSONKit (JSONKitSerializingBlockAdditions)

Posted by "Christoph Jerolimov (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CB-1453?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13454396#comment-13454396 ] 

Christoph Jerolimov commented on CB-1453:
-----------------------------------------

Your link shows exactly the namespace "JSONKitSerializingBlockAdditions" which is also used by the original JSONKit library: https://github.com/johnezang/JSONKit/blob/master/JSONKit.h#L237

This categoryname must also prefixed like the methods or the other categories.
                
> Namespace issue of JSONKit (JSONKitSerializingBlockAdditions)
> -------------------------------------------------------------
>
>                 Key: CB-1453
>                 URL: https://issues.apache.org/jira/browse/CB-1453
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: iOS
>    Affects Versions: 2.1.0
>         Environment: iOS
>            Reporter: Christoph Jerolimov
>
> In CB-1000 you've changed the namespace handling for the included library. But you missed this Category. So the build run still into duplicate warnings:
> {code}
> @interface NSDictionary (JSONKitSerializingBlockAdditions)
> - (NSData *)JSONDataWithOptions:(JKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
> - (NSString *)JSONStringWithOptions:(JKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
> @end
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CB-1453) Namespace issue of JSONKit (JSONKitSerializingBlockAdditions)

Posted by "Christoph Jerolimov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CB-1453?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Christoph Jerolimov updated CB-1453:
------------------------------------

         Fix Version/s:     (was: 2.1.0)
           Description: 
In CB-1000 you've changed the namespace handling for the included library. But you missed this Category. So the build run still into duplicate warnings:

@interface NSDictionary (JSONKitSerializingBlockAdditions)
- (NSData *)JSONDataWithOptions:(JKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
- (NSString *)JSONStringWithOptions:(JKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
@end


  was:
jk_collectionClassLoadTimeInitialization should also be prefixed

Other external libraries such as NSData+Base64 can cause duplicating symbols as well

     Affects Version/s:     (was: 1.9.0)
                        2.1.0
    Remaining Estimate:     (was: 48h)
     Original Estimate:     (was: 48h)
               Summary: Namespace issue of JSONKit (JSONKitSerializingBlockAdditions)  (was: CLONE - Namespace issue of JSONKit and other external libraries)
    
> Namespace issue of JSONKit (JSONKitSerializingBlockAdditions)
> -------------------------------------------------------------
>
>                 Key: CB-1453
>                 URL: https://issues.apache.org/jira/browse/CB-1453
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: iOS
>    Affects Versions: 2.1.0
>         Environment: iOS
>            Reporter: Christoph Jerolimov
>
> In CB-1000 you've changed the namespace handling for the included library. But you missed this Category. So the build run still into duplicate warnings:
> @interface NSDictionary (JSONKitSerializingBlockAdditions)
> - (NSData *)JSONDataWithOptions:(JKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
> - (NSString *)JSONStringWithOptions:(JKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
> @end

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CB-1453) Namespace issue of JSONKit (JSONKitSerializingBlockAdditions)

Posted by "Shazron Abdullah (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CB-1453?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Shazron Abdullah updated CB-1453:
---------------------------------

    Fix Version/s:     (was: 2.2.0)
                   2.1.0

Pushing to 2.1.0 as we had to get a critical fix in, and piggybacking this trivial fix in as well.
                
> Namespace issue of JSONKit (JSONKitSerializingBlockAdditions)
> -------------------------------------------------------------
>
>                 Key: CB-1453
>                 URL: https://issues.apache.org/jira/browse/CB-1453
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: iOS
>    Affects Versions: 2.1.0
>         Environment: iOS
>            Reporter: Christoph Jerolimov
>             Fix For: 2.1.0
>
>
> In CB-1000 you've changed the namespace handling for the included library. But you missed this Category. So the build run still into duplicate warnings:
> {code}
> @interface NSDictionary (JSONKitSerializingBlockAdditions)
> - (NSData *)cdv_JSONDataWithOptions:(CDVJKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
> - (NSString *)cdv_JSONStringWithOptions:(CDVJKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
> @end
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Resolved] (CB-1453) Namespace issue of JSONKit (JSONKitSerializingBlockAdditions)

Posted by "Shazron Abdullah (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CB-1453?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Shazron Abdullah resolved CB-1453.
----------------------------------

    Resolution: Fixed

Fix commit - http://git-wip-us.apache.org/repos/asf/incubator-cordova-ios/commit/1041cac8
                
> Namespace issue of JSONKit (JSONKitSerializingBlockAdditions)
> -------------------------------------------------------------
>
>                 Key: CB-1453
>                 URL: https://issues.apache.org/jira/browse/CB-1453
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: iOS
>    Affects Versions: 2.1.0
>         Environment: iOS
>            Reporter: Christoph Jerolimov
>             Fix For: 2.1.0
>
>
> In CB-1000 you've changed the namespace handling for the included library. But you missed this Category. So the build run still into duplicate warnings:
> {code}
> @interface NSDictionary (JSONKitSerializingBlockAdditions)
> - (NSData *)cdv_JSONDataWithOptions:(CDVJKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
> - (NSString *)cdv_JSONStringWithOptions:(CDVJKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
> @end
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (CB-1453) Namespace issue of JSONKit (JSONKitSerializingBlockAdditions)

Posted by "Shazron Abdullah (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CB-1453?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13454412#comment-13454412 ] 

Shazron Abdullah commented on CB-1453:
--------------------------------------

Right, like I mentioned. It is harmless for now, since you have the source you can edit it as a workaround. We are already in the 2.1 release cycle so this will be fixed in 2.2.0
                
> Namespace issue of JSONKit (JSONKitSerializingBlockAdditions)
> -------------------------------------------------------------
>
>                 Key: CB-1453
>                 URL: https://issues.apache.org/jira/browse/CB-1453
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: iOS
>    Affects Versions: 2.1.0
>         Environment: iOS
>            Reporter: Christoph Jerolimov
>
> In CB-1000 you've changed the namespace handling for the included library. But you missed this Category. So the build run still into duplicate warnings:
> {code}
> @interface NSDictionary (JSONKitSerializingBlockAdditions)
> - (NSData *)cdv_JSONDataWithOptions:(CDVJKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
> - (NSString *)cdv_JSONStringWithOptions:(CDVJKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
> @end
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Comment Edited] (CB-1453) Namespace issue of JSONKit (JSONKitSerializingBlockAdditions)

Posted by "Christoph Jerolimov (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CB-1453?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13454396#comment-13454396 ] 

Christoph Jerolimov edited comment on CB-1453 at 9/13/12 8:45 AM:
------------------------------------------------------------------

Sorry, your right. I've copied the code from JSONKit instead from Cordova. I've updatet the issue. The problem is still there, because your link shows exactly the problem.

The cordova JSONKit clone defines the same namespace "JSONKitSerializingBlockAdditions" like the original JSONKit library: https://github.com/johnezang/JSONKit/blob/master/JSONKit.h#L237

So it could not be used in the same project. Fix fix this the categoryname must also prefixed like the methods or the other categories.
                
      was (Author: jerolimov):
    Your link shows exactly the namespace "JSONKitSerializingBlockAdditions" which is also used by the original JSONKit library: https://github.com/johnezang/JSONKit/blob/master/JSONKit.h#L237

This categoryname must also prefixed like the methods or the other categories.
                  
> Namespace issue of JSONKit (JSONKitSerializingBlockAdditions)
> -------------------------------------------------------------
>
>                 Key: CB-1453
>                 URL: https://issues.apache.org/jira/browse/CB-1453
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: iOS
>    Affects Versions: 2.1.0
>         Environment: iOS
>            Reporter: Christoph Jerolimov
>
> In CB-1000 you've changed the namespace handling for the included library. But you missed this Category. So the build run still into duplicate warnings:
> {code}
> @interface NSDictionary (JSONKitSerializingBlockAdditions)
> - (NSData *)cdv_JSONDataWithOptions:(CDVJKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
> - (NSString *)cdv_JSONStringWithOptions:(CDVJKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
> @end
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CB-1453) Namespace issue of JSONKit (JSONKitSerializingBlockAdditions)

Posted by "Christoph Jerolimov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CB-1453?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Christoph Jerolimov updated CB-1453:
------------------------------------

    Description: 
In CB-1000 you've changed the namespace handling for the included library. But you missed this Category. So the build run still into duplicate warnings:

{code}
@interface NSDictionary (JSONKitSerializingBlockAdditions)
- (NSData *)cdv_JSONDataWithOptions:(CDVJKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
- (NSString *)cdv_JSONStringWithOptions:(CDVJKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
@end
{code}


  was:
In CB-1000 you've changed the namespace handling for the included library. But you missed this Category. So the build run still into duplicate warnings:

{code}
@interface NSDictionary (JSONKitSerializingBlockAdditions)
- (NSData *)JSONDataWithOptions:(JKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
- (NSString *)JSONStringWithOptions:(JKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
@end
{code}


    
> Namespace issue of JSONKit (JSONKitSerializingBlockAdditions)
> -------------------------------------------------------------
>
>                 Key: CB-1453
>                 URL: https://issues.apache.org/jira/browse/CB-1453
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: iOS
>    Affects Versions: 2.1.0
>         Environment: iOS
>            Reporter: Christoph Jerolimov
>
> In CB-1000 you've changed the namespace handling for the included library. But you missed this Category. So the build run still into duplicate warnings:
> {code}
> @interface NSDictionary (JSONKitSerializingBlockAdditions)
> - (NSData *)cdv_JSONDataWithOptions:(CDVJKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
> - (NSString *)cdv_JSONStringWithOptions:(CDVJKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
> @end
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CB-1453) Namespace issue of JSONKit (JSONKitSerializingBlockAdditions)

Posted by "Christoph Jerolimov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CB-1453?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Christoph Jerolimov updated CB-1453:
------------------------------------

    Description: 
In CB-1000 you've changed the namespace handling for the included library. But you missed this Category. So the build run still into duplicate warnings:

{code}
@interface NSDictionary (JSONKitSerializingBlockAdditions)
- (NSData *)JSONDataWithOptions:(JKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
- (NSString *)JSONStringWithOptions:(JKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
@end
{code}


  was:
In CB-1000 you've changed the namespace handling for the included library. But you missed this Category. So the build run still into duplicate warnings:

@interface NSDictionary (JSONKitSerializingBlockAdditions)
- (NSData *)JSONDataWithOptions:(JKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
- (NSString *)JSONStringWithOptions:(JKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
@end


    
> Namespace issue of JSONKit (JSONKitSerializingBlockAdditions)
> -------------------------------------------------------------
>
>                 Key: CB-1453
>                 URL: https://issues.apache.org/jira/browse/CB-1453
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: iOS
>    Affects Versions: 2.1.0
>         Environment: iOS
>            Reporter: Christoph Jerolimov
>
> In CB-1000 you've changed the namespace handling for the included library. But you missed this Category. So the build run still into duplicate warnings:
> {code}
> @interface NSDictionary (JSONKitSerializingBlockAdditions)
> - (NSData *)JSONDataWithOptions:(JKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
> - (NSString *)JSONStringWithOptions:(JKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
> @end
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CB-1453) Namespace issue of JSONKit (JSONKitSerializingBlockAdditions)

Posted by "Shazron Abdullah (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CB-1453?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Shazron Abdullah updated CB-1453:
---------------------------------

    Fix Version/s: 2.2.0
    
> Namespace issue of JSONKit (JSONKitSerializingBlockAdditions)
> -------------------------------------------------------------
>
>                 Key: CB-1453
>                 URL: https://issues.apache.org/jira/browse/CB-1453
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: iOS
>    Affects Versions: 2.1.0
>         Environment: iOS
>            Reporter: Christoph Jerolimov
>             Fix For: 2.2.0
>
>
> In CB-1000 you've changed the namespace handling for the included library. But you missed this Category. So the build run still into duplicate warnings:
> {code}
> @interface NSDictionary (JSONKitSerializingBlockAdditions)
> - (NSData *)cdv_JSONDataWithOptions:(CDVJKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
> - (NSString *)cdv_JSONStringWithOptions:(CDVJKSerializeOptionFlags)serializeOptions serializeUnsupportedClassesUsingBlock:(id(^)(id object))block error:(NSError **)error;
> @end
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira