Bug 224814

Summary: New port: devel/py-robotframework-seleniumlibrary Web testing library for Robot Framework
Product: Ports & Packages Reporter: vladimir.chukharev
Component: Individual Port(s)Assignee: Kai Knoblich <kai>
Status: Closed FIXED    
Severity: Affects Only Me CC: kai, miwi
Priority: ---    
Version: Latest   
Hardware: Any   
OS: Any   
Bug Depends on:    
Bug Blocks: 224815    
Attachments:
Description Flags
Shar-file with the new port
none
Corrected shar file
none
Shar file for version 3.3.1
vladimir.chukharev: maintainer-approval+
Corrected shar file for version 3.3.1 vladimir.chukharev: maintainer-approval+

Description vladimir.chukharev 2018-01-01 10:14:18 UTC
Created attachment 189310 [details]
Shar-file with the new port

Robot Framework web testing library Selenium2Library (earlier ported as devel/py-robotframework-selenium2library) has been renamed to SeleniumLibrary. A new Selenium2Library has been created as a compatibility layer for the transition period.

The new library should work with Python 2.7 and 3.3+.

Port devel/py-robotframework-selenium2library will be updated to the new compatibility layer in a separate PR, depending on this one.
Comment 1 vladimir.chukharev 2018-01-19 21:16:00 UTC
Created attachment 189917 [details]
Corrected shar file

I fogot to clean the $FreeBSD$ tag, this is corrected in the updated shar file.
Comment 2 Martin Wilke freebsd_committer freebsd_triage 2018-05-19 18:46:20 UTC
Hi,

Sorry for the delay, may i suggest that we repocopy that port from devel/py-robotframework-selenium2library to devel/py-robotframework-seleniumlibrary, update to 3.0.1 and update all dependency (if there any) and as last step we remove evel/py-robotframework-selenium2library i think makes more sense then to keep both version.
Comment 3 vladimir.chukharev 2018-05-20 14:08:07 UTC
(In reply to Martin Wilke from comment #2)
I thought the same way at the beginning. But the renamed library now is not compatible with the old one. So, it's better to have two libraries for a while, so that dependent software can work with and without adaptation to the new library.
Probably, the new devel/py-robotframework-selenium2library should be marked
DEPRECATED= "Use devel/py-robotframework-seleniumlibrary instead"
or alike from the very beginning, although I planned to do that somewhat later...
Comment 4 vladimir.chukharev 2019-06-12 20:02:01 UTC
Created attachment 205017 [details]
Shar file for version 3.3.1
Comment 5 vladimir.chukharev 2019-06-12 20:02:52 UTC
I prepared a new shar-file for version 3.3.1.
This version does not have compatibility layer for the old selenium2library. Therefore, it's better now to repocopy the old devel/py-robotframework-selenium2library as devel/py-robotframework-seleniumlibrary, since there cannot be compatibility layer as devel/py-robotframework-selenium2library.
Comment 6 vladimir.chukharev 2019-06-13 12:15:30 UTC
Created attachment 205032 [details]
Corrected shar file for version 3.3.1

USE_PYTHON=concurrent is deleted.
Comment 7 Kai Knoblich freebsd_committer freebsd_triage 2019-06-22 21:59:47 UTC
(In reply to vladimir.chukharev from comment #5)

Hi Vladimir,

once again sorry for the meanwhile huge delay. It's now all set and I'm just asking if I got everything right so far. I'll do the following actions:

1. Repocopy devel/py-robotframework-selenium2library -> devel/py-robotframework-seleniumlibrary

2. Apply your attached patch to the newly created devel/py-robotframework-seleniumlibrary (includes a small fix with RUN_DEPENDS -> replaced devel/py-decorator with www/py-selenium).

If the two steps are correct, I've only one question: Should I add a deprecation note for the old port, devel/py-robotframework-selenium2library, or do you want to do it later with another patch?
Comment 8 vladimir.chukharev 2019-06-24 09:02:56 UTC
(In reply to Kai Knoblich from comment #7)

1. Rename devel/py-robotframework-selenium2library -> devel/py-robotframework-seleniumlibrary

2. Use my shar file and your corrections to udate devel/py-robotframework-seleniumlibrary.

Selenium Library v.2 was incompatible with v.1, therefore it was named as
Selenium2Library. Now, Selenium Library v.3 is again incompatible with earlier versions. Developers decided not to use the version number in the name, but go back to the general name Selenium Library, with an additional small compatibility layer for the transition time.

Now the transition time is over, and upstream stopped the support of compatibility. So, devel/py-robotframework-selenium2library cannot be kept as a port for compatibility with the old devel/py-robotframework-selenium2library.
Comment 9 commit-hook freebsd_committer freebsd_triage 2019-06-25 19:42:36 UTC
A commit references this bug:

Author: kai
Date: Tue Jun 25 19:42:24 UTC 2019
New revision: 505102
URL: https://svnweb.freebsd.org/changeset/ports/505102

Log:
  devel/py-robotframework-selenium2library: Rename to match upstream

  The Python package was forked from the old SeleniumLibrary as
  Selenium2Library to use Selenium 2 and WebDriver technologies.

  Later then it was renamed back to its original name, SeleniumLibrary.

  Thus rename the existing port to py-robotframework-seleniumlibrary and
  update the pkg-descr to reflect the new constellation.

  PR:		224814
  Submitted by:	vladimir.chukharev@gmail.com (maintainer)
  Reviewed by:	miwi (earlier version)

Changes:
  head/MOVED
  head/devel/Makefile
  head/devel/py-robotframework-ride/Makefile
  head/devel/py-robotframework-selenium2library/
  head/devel/py-robotframework-seleniumlibrary/
  head/devel/py-robotframework-seleniumlibrary/Makefile
  head/devel/py-robotframework-seleniumlibrary/distinfo
  head/devel/py-robotframework-seleniumlibrary/pkg-descr
Comment 10 Kai Knoblich freebsd_committer freebsd_triage 2019-06-25 19:53:30 UTC
(In reply to vladimir.chukharev from comment #8)

Committed, thank you for your patches, explanations and of course your patience. 

One small note:

One of your ports you maintain, devel/py-robotframework-ride, was affected by the renaming (= change RUN_DEPENDS) and I tried to do some runtime tests but it was not possible, as it emitted following error message:

> Wrong wxPython version.
> You need to install wxPython 2.8.12.1 with unicode support to run RIDE.
> wxPython 2.8.12.1 can be downloaded from http://sourceforge.net/projects/wxpython/files/wxPython/2.8.12.1/

If you like I can set that port as BROKEN for an interim time.
Comment 11 vladimir.chukharev 2019-06-25 20:01:23 UTC
(In reply to Kai Knoblich from comment #10)
Thank you for committing it!

I know about the problem with RIDE and I'm working on it. Indeed, it would be nice if you mark it BROKEN for the time being.
Comment 12 commit-hook freebsd_committer freebsd_triage 2019-06-25 20:46:28 UTC
A commit references this bug:

Author: kai
Date: Tue Jun 25 20:46:01 UTC 2019
New revision: 505104
URL: https://svnweb.freebsd.org/changeset/ports/505104

Log:
  devel/py-robotframework-ride: Mark as BROKEN

  Mark the port temporarily as BROKEN because it's not compatible with
  wxWidgets 3.0 or later. It's already known to the maintainer and an update,
  that unbreaks the port, will be submitted soon.

  PR:		224814 (related)
  Approved by:	vladimir.chukharev@gmail.com (maintainer)

Changes:
  head/devel/py-robotframework-ride/Makefile
Comment 13 Kai Knoblich freebsd_committer freebsd_triage 2019-06-25 20:51:58 UTC
(In reply to vladimir.chukharev from comment #11)

Alright, thank you for your quick reply. I've now marked that port temporarily as BROKEN.

I'm also closing this PR now as all required changes are done and committed.