D24684: Use ECMGenerateExportHeader to manage deprecated API better

2019-10-18 Thread Friedrich W. H. Kossebau
This revision was automatically updated to reflect the committed changes.
Closed by commit R241:aa5b0d89b2ed: Use ECMGenerateExportHeader to manage 
deprecated API better (authored by kossebau).

CHANGED PRIOR TO COMMIT
  https://phabricator.kde.org/D24684?vs=68210=68257#toc

REPOSITORY
  R241 KIO

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D24684?vs=68210=68257

REVISION DETAIL
  https://phabricator.kde.org/D24684

AFFECTED FILES
  CMakeLists.txt
  src/core/CMakeLists.txt
  src/core/copyjob.h
  src/core/global.cpp
  src/core/global.h
  src/core/job_base.h
  src/core/jobuidelegateextension.h
  src/core/kcoredirlister.h
  src/core/kfileitem.cpp
  src/core/kfileitem.h
  src/core/krecentdocument.h
  src/core/ksambashare.cpp
  src/core/ksambashare.h
  src/core/ksslcertificatemanager.h
  src/core/ktcpsocket.h
  src/core/scheduler.cpp
  src/core/scheduler.h
  src/core/slavebase.cpp
  src/core/slavebase.h
  src/core/slaveinterface.h
  src/core/statjob.cpp
  src/core/statjob.h
  src/core/transferjob.cpp
  src/core/transferjob.h
  src/core/udsentry.cpp
  src/core/udsentry.h
  src/filewidgets/CMakeLists.txt
  src/filewidgets/kfilepreviewgenerator.h
  src/filewidgets/kfilewidget.cpp
  src/filewidgets/kfilewidget.h
  src/filewidgets/knewfilemenu.h
  src/filewidgets/kurlnavigator.cpp
  src/filewidgets/kurlnavigator.h
  src/widgets/CMakeLists.txt
  src/widgets/accessmanager.cpp
  src/widgets/accessmanager.h
  src/widgets/kdirmodel.cpp
  src/widgets/kdirmodel.h
  src/widgets/kpropertiesdialog.cpp
  src/widgets/kpropertiesdialog.h
  src/widgets/krun.cpp
  src/widgets/krun.h
  src/widgets/kurifilter.cpp
  src/widgets/kurifilter.h
  src/widgets/kurlrequester.cpp
  src/widgets/kurlrequester.h
  src/widgets/kurlrequesterdialog.cpp
  src/widgets/kurlrequesterdialog.h
  src/widgets/paste.cpp
  src/widgets/paste.h
  src/widgets/previewjob.cpp
  src/widgets/previewjob.h
  src/widgets/renamedialog.cpp
  src/widgets/renamedialog.h
  src/widgets/sslui.h
  src/widgets/thumbcreator.h

To: kossebau, #frameworks, dfaure
Cc: kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns


D24684: Use ECMGenerateExportHeader to manage deprecated API better

2019-10-18 Thread David Faure
dfaure accepted this revision.
dfaure added a comment.
This revision is now accepted and ready to land.


  OK it's very likely that KIOCORE_NO_DEPRECATED didn't work anyway, as I found 
out in other frameworks where I tried enabling this kind of thing.

REPOSITORY
  R241 KIO

BRANCH
  useECMGenerateExportHeader

REVISION DETAIL
  https://phabricator.kde.org/D24684

To: kossebau, #frameworks, dfaure
Cc: kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns


D24684: Use ECMGenerateExportHeader to manage deprecated API better

2019-10-18 Thread Friedrich W. H. Kossebau
kossebau added inline comments.

INLINE COMMENTS

> dfaure wrote in global.h:105
> LOL 3.4 was long ago ;)
> 
> good find :)

Thankfully phabricator and its locate-file, go-to-version-before-commit & tags 
listing for commit was helpful here to good degrees, so that usually tool < 1 
min to find where the deprecation happened.
So the temptation to just say "since 5.0" and spare the digging work was not 
big enough compared to effort needed to be able to have correct history notes :)

https://phabricator.kde.org/source/kdelibs/repository/frameworks/ is currently 
still highranked by my firefox ;)

REPOSITORY
  R241 KIO

REVISION DETAIL
  https://phabricator.kde.org/D24684

To: kossebau, #frameworks, dfaure
Cc: kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns


D24684: Use ECMGenerateExportHeader to manage deprecated API better

2019-10-18 Thread Friedrich W. H. Kossebau
kossebau edited the summary of this revision.

REPOSITORY
  R241 KIO

REVISION DETAIL
  https://phabricator.kde.org/D24684

To: kossebau, #frameworks, dfaure
Cc: kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns


D24684: Use ECMGenerateExportHeader to manage deprecated API better

2019-10-18 Thread Friedrich W. H. Kossebau
kossebau added a comment.


  In D24684#549785 , @dfaure wrote:
  
  > The commit log says KIOKIOFILEWIDGETS with KIO duplicated, that's a typo in 
the commit log, but only there, right?
  
  
  Typo indeed, fixed.

INLINE COMMENTS

> dfaure wrote in global.cpp:99
> Isn't some ifdef still needed for this deprecated method?

I forgot to explicitly mention this in the commit message: no support for 
EXCLUDE_DEPRECATED_BEFORE_AND_AT for KIO here yet, as version-level-based 
disabling of API needs some work first, as some undeprecated API is implemented 
in terms of deprecated still, as I found when testing that support.
The currently existing `#ifndef KIOCORE_NO_DEPRECATED` in the source files thus 
got only removed.

Gzess that should get an explicit TODO comment, e.g. near the 
ecm_generate_export_header marcos?

> dfaure wrote in kfileitem.cpp:1242
> I'm confused, isn't this what *_BUILD_DEPRECATED_SINCE is for?
> 
> [repeats]

See other comment.

REPOSITORY
  R241 KIO

REVISION DETAIL
  https://phabricator.kde.org/D24684

To: kossebau, #frameworks, dfaure
Cc: kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns


D24684: Use ECMGenerateExportHeader to manage deprecated API better

2019-10-18 Thread Friedrich W. H. Kossebau
kossebau edited the summary of this revision.

REPOSITORY
  R241 KIO

REVISION DETAIL
  https://phabricator.kde.org/D24684

To: kossebau, #frameworks, dfaure
Cc: kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns


D24684: Use ECMGenerateExportHeader to manage deprecated API better

2019-10-18 Thread David Faure
dfaure added inline comments.

INLINE COMMENTS

> global.cpp:99
>  
> -#ifndef KIOCORE_NO_DEPRECATED
>  KIOCORE_EXPORT QTime KIO::calculateRemaining(KIO::filesize_t totalSize, 
> KIO::filesize_t processedSize, KIO::filesize_t speed)

Isn't some ifdef still needed for this deprecated method?

> global.h:105
>   * @return calculated remaining time
> + * @deprecated Since 3.4, use calculateRemainingSeconds() instead, as QTime 
> is limited to 23:59:59
>   */

LOL 3.4 was long ago ;)

good find :)

> kfileitem.cpp:1242
>  
> -#ifndef KIOCORE_NO_DEPRECATED
>  bool KFileItem::acceptsDrops() const

I'm confused, isn't this what *_BUILD_DEPRECATED_SINCE is for?

[repeats]

REPOSITORY
  R241 KIO

REVISION DETAIL
  https://phabricator.kde.org/D24684

To: kossebau, #frameworks, dfaure
Cc: kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns


D24684: Use ECMGenerateExportHeader to manage deprecated API better

2019-10-18 Thread David Faure
dfaure added a comment.


  The commit log says KIOKIOFILEWIDGETS with KIO duplicated, that's a typo in 
the commit log, but only there, right?

REPOSITORY
  R241 KIO

REVISION DETAIL
  https://phabricator.kde.org/D24684

To: kossebau, #frameworks, dfaure
Cc: kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns


D24684: Use ECMGenerateExportHeader to manage deprecated API better

2019-10-18 Thread Friedrich W. H. Kossebau
kossebau added a comment.


  Ping... would be happy if this one could get reviewed ASAP, so we have the 
patches for all of KF modules in and can enable the group KF_* macros, so 
people can conveniently use -DKF_DISABLE_DEPRECATED_BEFORE_AND_AT=0Xxx in 
their projects :)

REPOSITORY
  R241 KIO

REVISION DETAIL
  https://phabricator.kde.org/D24684

To: kossebau, #frameworks, dfaure
Cc: kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns


D24684: Use ECMGenerateExportHeader to manage deprecated API better

2019-10-17 Thread Friedrich W. H. Kossebau
kossebau updated this revision to Diff 68210.
kossebau added a comment.


  update to latest master and new deprecated API

REPOSITORY
  R241 KIO

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D24684?vs=68021=68210

BRANCH
  useECMGenerateExportHeader

REVISION DETAIL
  https://phabricator.kde.org/D24684

AFFECTED FILES
  CMakeLists.txt
  src/core/CMakeLists.txt
  src/core/copyjob.h
  src/core/global.cpp
  src/core/global.h
  src/core/job_base.h
  src/core/jobuidelegateextension.h
  src/core/kcoredirlister.h
  src/core/kfileitem.cpp
  src/core/kfileitem.h
  src/core/krecentdocument.h
  src/core/ksambashare.cpp
  src/core/ksambashare.h
  src/core/ksslcertificatemanager.h
  src/core/ktcpsocket.h
  src/core/scheduler.cpp
  src/core/scheduler.h
  src/core/slavebase.cpp
  src/core/slavebase.h
  src/core/slaveinterface.h
  src/core/statjob.cpp
  src/core/statjob.h
  src/core/transferjob.cpp
  src/core/transferjob.h
  src/core/udsentry.cpp
  src/core/udsentry.h
  src/filewidgets/CMakeLists.txt
  src/filewidgets/kfilepreviewgenerator.h
  src/filewidgets/kfilewidget.cpp
  src/filewidgets/kfilewidget.h
  src/filewidgets/knewfilemenu.h
  src/filewidgets/kurlnavigator.cpp
  src/filewidgets/kurlnavigator.h
  src/widgets/CMakeLists.txt
  src/widgets/accessmanager.cpp
  src/widgets/accessmanager.h
  src/widgets/kdirmodel.cpp
  src/widgets/kdirmodel.h
  src/widgets/kpropertiesdialog.cpp
  src/widgets/kpropertiesdialog.h
  src/widgets/krun.cpp
  src/widgets/krun.h
  src/widgets/kurifilter.cpp
  src/widgets/kurifilter.h
  src/widgets/kurlrequester.cpp
  src/widgets/kurlrequester.h
  src/widgets/kurlrequesterdialog.cpp
  src/widgets/kurlrequesterdialog.h
  src/widgets/paste.cpp
  src/widgets/paste.h
  src/widgets/previewjob.cpp
  src/widgets/previewjob.h
  src/widgets/renamedialog.cpp
  src/widgets/renamedialog.h
  src/widgets/sslui.h
  src/widgets/thumbcreator.h

To: kossebau, #frameworks, dfaure
Cc: kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns


D24684: Use ECMGenerateExportHeader to manage deprecated API better

2019-10-16 Thread Friedrich W. H. Kossebau
kossebau edited the summary of this revision.

REPOSITORY
  R241 KIO

REVISION DETAIL
  https://phabricator.kde.org/D24684

To: kossebau, #frameworks, dfaure
Cc: kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns


D24684: Use ECMGenerateExportHeader to manage deprecated API better

2019-10-16 Thread David Faure
dfaure added a comment.


  The commit log talks about KCalendarCore instead of KIO :)

REPOSITORY
  R241 KIO

REVISION DETAIL
  https://phabricator.kde.org/D24684

To: kossebau, #frameworks, dfaure
Cc: kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns


D24684: Use ECMGenerateExportHeader to manage deprecated API better

2019-10-16 Thread Friedrich W. H. Kossebau
kossebau updated this revision to Diff 68021.
kossebau added a comment.


  update to latest master

REPOSITORY
  R241 KIO

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D24684?vs=68018=68021

BRANCH
  useECMGenerateExportHeader

REVISION DETAIL
  https://phabricator.kde.org/D24684

AFFECTED FILES
  CMakeLists.txt
  src/core/CMakeLists.txt
  src/core/copyjob.h
  src/core/global.cpp
  src/core/global.h
  src/core/job_base.h
  src/core/jobuidelegateextension.h
  src/core/kcoredirlister.h
  src/core/kfileitem.cpp
  src/core/kfileitem.h
  src/core/krecentdocument.h
  src/core/ksambashare.cpp
  src/core/ksambashare.h
  src/core/ksslcertificatemanager.h
  src/core/ktcpsocket.h
  src/core/scheduler.cpp
  src/core/scheduler.h
  src/core/slavebase.cpp
  src/core/slavebase.h
  src/core/slaveinterface.h
  src/core/statjob.cpp
  src/core/statjob.h
  src/core/transferjob.cpp
  src/core/transferjob.h
  src/core/udsentry.cpp
  src/core/udsentry.h
  src/filewidgets/CMakeLists.txt
  src/filewidgets/kfilepreviewgenerator.h
  src/filewidgets/kfilewidget.cpp
  src/filewidgets/kfilewidget.h
  src/filewidgets/knewfilemenu.h
  src/filewidgets/kurlnavigator.cpp
  src/filewidgets/kurlnavigator.h
  src/widgets/CMakeLists.txt
  src/widgets/accessmanager.cpp
  src/widgets/accessmanager.h
  src/widgets/kdirmodel.cpp
  src/widgets/kdirmodel.h
  src/widgets/kpropertiesdialog.cpp
  src/widgets/kpropertiesdialog.h
  src/widgets/krun.cpp
  src/widgets/krun.h
  src/widgets/kurifilter.cpp
  src/widgets/kurifilter.h
  src/widgets/kurlrequester.cpp
  src/widgets/kurlrequester.h
  src/widgets/kurlrequesterdialog.cpp
  src/widgets/kurlrequesterdialog.h
  src/widgets/paste.cpp
  src/widgets/paste.h
  src/widgets/previewjob.cpp
  src/widgets/previewjob.h
  src/widgets/renamedialog.cpp
  src/widgets/renamedialog.h
  src/widgets/thumbcreator.h

To: kossebau, #frameworks, dfaure
Cc: kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns


D24684: Use ECMGenerateExportHeader to manage deprecated API better

2019-10-16 Thread Friedrich W. H. Kossebau
kossebau added a comment.


  No support for EXCLUDE_DEPRECATED_BEFORE_AND_AT here as well, that needs 
another round of work. Thus the removal of all the KIOWIDGETS_NO_DEPRECATED 
from the source files, no *_BUILD_DEPRECATED_SINCE there to properly replace 
them for now.
  
  So patch solely concentrating on visibility of deprecated API to consumers of 
KIO.

REPOSITORY
  R241 KIO

REVISION DETAIL
  https://phabricator.kde.org/D24684

To: kossebau, #frameworks, dfaure
Cc: kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns


D24684: Use ECMGenerateExportHeader to manage deprecated API better

2019-10-16 Thread Friedrich W. H. Kossebau
kossebau created this revision.
kossebau added reviewers: Frameworks, dfaure.
Herald added a project: Frameworks.
Herald added a subscriber: kde-frameworks-devel.
kossebau requested review of this revision.

REVISION SUMMARY
  Allows
  
  - projects linking to KCalendarCore to hide deprecated API up to a given 
version or silence deprecation warnings after a given version, using
- -DKIOCORE_DISABLE_DEPRECATED_BEFORE_AND_AT
- -DKIOCORE_NO_DEPRECATED
- -DKIOCORE_DEPRECATED_WARNINGS_SINCE
- -DKIOCORE_NO_DEPRECATED_WARNINGS
- -DKIOKIOFILEWIDGETS_DISABLE_DEPRECATED_BEFORE_AND_AT
- -DKIOKIOFILEWIDGETS_NO_DEPRECATED
- -DKIOKIOFILEWIDGETS_DEPRECATED_WARNINGS_SINCE
- -DKIOKIOFILEWIDGETS_NO_DEPRECATED_WARNINGS
- -DKIOWIDGETS_DISABLE_DEPRECATED_BEFORE_AND_AT
- -DKIOWIDGETS_NO_DEPRECATED
- -DKIOWIDGETS_DEPRECATED_WARNINGS_SINCE
- -DKIOWIDGETS_NO_DEPRECATED_WARNINGS
  
  or
- -DKF_DISABLE_DEPRECATED_BEFORE_AND_AT
- -DKF_NO_DEPRECATED
- -DKF_DEPRECATED_WARNINGS_SINCE
- -DKF_NO_DEPRECATED_WARNINGS

REPOSITORY
  R241 KIO

BRANCH
  useECMGenerateExportHeader

REVISION DETAIL
  https://phabricator.kde.org/D24684

AFFECTED FILES
  CMakeLists.txt
  src/core/CMakeLists.txt
  src/core/copyjob.h
  src/core/global.cpp
  src/core/global.h
  src/core/job_base.h
  src/core/jobuidelegateextension.h
  src/core/kcoredirlister.h
  src/core/kfileitem.cpp
  src/core/kfileitem.h
  src/core/krecentdocument.h
  src/core/ksambashare.cpp
  src/core/ksambashare.h
  src/core/ksslcertificatemanager.h
  src/core/ktcpsocket.h
  src/core/scheduler.cpp
  src/core/scheduler.h
  src/core/slavebase.cpp
  src/core/slavebase.h
  src/core/slaveinterface.h
  src/core/statjob.cpp
  src/core/statjob.h
  src/core/transferjob.cpp
  src/core/transferjob.h
  src/core/udsentry.cpp
  src/core/udsentry.h
  src/filewidgets/CMakeLists.txt
  src/filewidgets/kfilepreviewgenerator.h
  src/filewidgets/kfilewidget.cpp
  src/filewidgets/kfilewidget.h
  src/filewidgets/knewfilemenu.h
  src/filewidgets/kurlnavigator.cpp
  src/filewidgets/kurlnavigator.h
  src/widgets/CMakeLists.txt
  src/widgets/accessmanager.cpp
  src/widgets/accessmanager.h
  src/widgets/kdirmodel.cpp
  src/widgets/kdirmodel.h
  src/widgets/kpropertiesdialog.cpp
  src/widgets/kpropertiesdialog.h
  src/widgets/krun.cpp
  src/widgets/krun.h
  src/widgets/kurifilter.cpp
  src/widgets/kurifilter.h
  src/widgets/kurlrequester.cpp
  src/widgets/kurlrequester.h
  src/widgets/kurlrequesterdialog.cpp
  src/widgets/kurlrequesterdialog.h
  src/widgets/paste.cpp
  src/widgets/paste.h
  src/widgets/previewjob.cpp
  src/widgets/previewjob.h
  src/widgets/renamedialog.cpp
  src/widgets/renamedialog.h
  src/widgets/thumbcreator.h

To: kossebau, #frameworks, dfaure
Cc: kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns