drewmccormack / ensembles

A synchronization framework for Core Data.
MIT License
1.63k stars 131 forks source link

Build Warnings - iOS 12 and above #293

Open dgwilson opened 3 years ago

dgwilson commented 3 years ago

Hi Drew...

I have a bunch of build warnings with Ensembles for iOS. My Deployment target is 12.0. Perhaps it shouldn't be? Are these planned to be cleaned up? What's the best way to get these addressed? I can attempt to offer some assistance if that's the right thing to do?

image
drewmccormack commented 3 years ago

If you want to add compiler directives to silence the warnings, you can. I am happy to include those via a PR.

Removing the warnings by changing the code is not really an option, because on older OSes the deprecated code is the only option there is. The warnings also don’t appear when you build Ensembles in isolation, because it targets early deployment targets.

Kind regards, Drew

On 29 Dec 2020, at 04:22, David Wilson notifications@github.com wrote:

 Hi Drew...

I have a bunch of build warnings with Ensembles for iOS. My Deployment target is 12.0. Perhaps it shouldn't be? Are these planned to be cleaned up? What's the best way to get these addressed? I can attempt to offer some assistance if that's the right thing to do?

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe.

dgwilson commented 3 years ago

If you want to add compiler directives to silence the warnings, you can. I am happy to include those via a PR

Could you explain PR for me please.

Understood regarding changing the code because of support for older OSes.

On 29/12/2020, at 10:13 PM, Drew McCormack notifications@github.com wrote:

If you want to add compiler directives to silence the warnings, you can. I am happy to include those via a PR.

Removing the warnings by changing the code is not really an option, because on older OSes the deprecated code is the only option there is. The warnings also don’t appear when you build Ensembles in isolation, because it targets early deployment targets.

Kind regards, Drew

On 29 Dec 2020, at 04:22, David Wilson notifications@github.com wrote:

 Hi Drew...

I have a bunch of build warnings with Ensembles for iOS. My Deployment target is 12.0. Perhaps it shouldn't be? Are these planned to be cleaned up? What's the best way to get these addressed? I can attempt to offer some assistance if that's the right thing to do?

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe. — You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/drewmccormack/ensembles/issues/293#issuecomment-752005700, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABVCN76LCGXMUN2UFX52Z3SXGMS3ANCNFSM4VMXQYCQ.

drewmccormack commented 3 years ago

Pull Requests are how open source generally works with contributions. You make your own fork of the master branch at GitHub. You make the changes and commit them your branch. Then you make a pull request and I can accept the changes. You can probably Google how to do these steps.

Kind regards, Drew

On 29 Dec 2020, at 10:22, David Wilson notifications@github.com wrote:



If you want to add compiler directives to silence the warnings, you can. I am happy to include those via a PR

Could you explain PR for me please.

Understood regarding changing the code because of support for older OSes.

  • David

On 29/12/2020, at 10:13 PM, Drew McCormack notifications@github.com wrote:

If you want to add compiler directives to silence the warnings, you can. I am happy to include those via a PR.

Removing the warnings by changing the code is not really an option, because on older OSes the deprecated code is the only option there is. The warnings also don’t appear when you build Ensembles in isolation, because it targets early deployment targets.

Kind regards, Drew

On 29 Dec 2020, at 04:22, David Wilson notifications@github.com wrote:

 Hi Drew...

I have a bunch of build warnings with Ensembles for iOS. My Deployment target is 12.0. Perhaps it shouldn't be? Are these planned to be cleaned up? What's the best way to get these addressed? I can attempt to offer some assistance if that's the right thing to do?

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe. — You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/drewmccormack/ensembles/issues/293#issuecomment-752005700, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABVCN76LCGXMUN2UFX52Z3SXGMS3ANCNFSM4VMXQYCQ. — You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe.

dgwilson commented 3 years ago

PR=Pull Request. Doh.

Not doing this often enough to make the translation. Thank you. I’ll see how I get on in the next couple of days (my day may be spoken for tomorrow).

On 29/12/2020, at 10:28 PM, Drew McCormack notifications@github.com wrote:

Pull Requests are how open source generally works with contributions. You make your own fork of the master branch at GitHub. You make the changes and commit them your branch. Then you make a pull request and I can accept the changes. You can probably Google how to do these steps.

Kind regards, Drew

On 29 Dec 2020, at 10:22, David Wilson notifications@github.com wrote:



If you want to add compiler directives to silence the warnings, you can. I am happy to include those via a PR

Could you explain PR for me please.

Understood regarding changing the code because of support for older OSes.

  • David

On 29/12/2020, at 10:13 PM, Drew McCormack notifications@github.com wrote:

If you want to add compiler directives to silence the warnings, you can. I am happy to include those via a PR.

Removing the warnings by changing the code is not really an option, because on older OSes the deprecated code is the only option there is. The warnings also don’t appear when you build Ensembles in isolation, because it targets early deployment targets.

Kind regards, Drew

On 29 Dec 2020, at 04:22, David Wilson notifications@github.com wrote:

 Hi Drew...

I have a bunch of build warnings with Ensembles for iOS. My Deployment target is 12.0. Perhaps it shouldn't be? Are these planned to be cleaned up? What's the best way to get these addressed? I can attempt to offer some assistance if that's the right thing to do?

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe. — You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/drewmccormack/ensembles/issues/293#issuecomment-752005700, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABVCN76LCGXMUN2UFX52Z3SXGMS3ANCNFSM4VMXQYCQ. — You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe. — You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/drewmccormack/ensembles/issues/293#issuecomment-752010199, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABVCN2LMVTOP5A5KIID4OTSXGOLDANCNFSM4VMXQYCQ.

drewmccormack commented 3 years ago

I have already used directives to silence warnings in other places. You can search for “push” or “pop” to find these places, and how best to do it.

Kind regards, Drew

On 29 Dec 2020, at 10:31, David Wilson notifications@github.com wrote:

 PR=Pull Request. Doh.

Not doing this often enough to make the translation. Thank you. I’ll see how I get on in the next couple of days (my day may be spoken for tomorrow).

  • David

On 29/12/2020, at 10:28 PM, Drew McCormack notifications@github.com wrote:

Pull Requests are how open source generally works with contributions. You make your own fork of the master branch at GitHub. You make the changes and commit them your branch. Then you make a pull request and I can accept the changes. You can probably Google how to do these steps.

Kind regards, Drew

On 29 Dec 2020, at 10:22, David Wilson notifications@github.com wrote:



If you want to add compiler directives to silence the warnings, you can. I am happy to include those via a PR

Could you explain PR for me please.

Understood regarding changing the code because of support for older OSes.

  • David

On 29/12/2020, at 10:13 PM, Drew McCormack notifications@github.com wrote:

If you want to add compiler directives to silence the warnings, you can. I am happy to include those via a PR.

Removing the warnings by changing the code is not really an option, because on older OSes the deprecated code is the only option there is. The warnings also don’t appear when you build Ensembles in isolation, because it targets early deployment targets.

Kind regards, Drew

On 29 Dec 2020, at 04:22, David Wilson notifications@github.com wrote:

 Hi Drew...

I have a bunch of build warnings with Ensembles for iOS. My Deployment target is 12.0. Perhaps it shouldn't be? Are these planned to be cleaned up? What's the best way to get these addressed? I can attempt to offer some assistance if that's the right thing to do?

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe. — You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/drewmccormack/ensembles/issues/293#issuecomment-752005700, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABVCN76LCGXMUN2UFX52Z3SXGMS3ANCNFSM4VMXQYCQ. — You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe. — You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/drewmccormack/ensembles/issues/293#issuecomment-752010199, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABVCN2LMVTOP5A5KIID4OTSXGOLDANCNFSM4VMXQYCQ.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe.

dgwilson commented 3 years ago

This is weird. I've performed the clone from githib (as previously I'd been downloading... unzipping ...)... deleted the iOS.xcodeproj from my project and dragged in the new one (from the now cloned download)... and deleted and added the ensembles.framework ... and I don't have the warnings I had before. I've check the deployment targets and they are set to iOS 12 for my project and ensembles. I don't understand why I'm no longer getting the warnings. It's good not to have them though. :-)

... [60 mins later...] and now the warnings are back. Still haven't figured out why... I'mm mask out the warnings now/today.

This is new... When I run my app... I'm getting a ton of these messages... [general] 'NSKeyedUnarchiveFromData' should not be used to for un-archiving and will be removed in a future release And if I've done my breakpoints properly they're coming from CDESaveMonitor.m - line 155. if (![eventContext save:&error]) CDELog(CDELoggingLevelError, @"Error saving event store: %@", error);

dgwilson commented 3 years ago

OK, I've ignored the warnings for deprecated code. One warning left to track down. The compiler is not pointing me to any line of code. I'm assuming the issue is in "CDEPropertyChangeValue" though I can't see what the issue might be.

CDEObjectChange.propertyChangeValues is using a nil or insecure value transformer. Please switch to NSSecureUnarchiveFromDataTransformerName or a custom NSValueTransformer subclass of NSSecureUnarchiveFromDataTransformer [2]

dgwilson commented 3 years ago

Pull Request created. I've never done that before... hopefully I've been through and done the right things. I have not addressed "CDEObjectChange.propertyChangeValues is using a nil or insecure value transformer." referenced in the last message.