Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Admins please read this #212

Closed
summercms opened this issue Apr 10, 2020 · 15 comments
Closed

Admins please read this #212

summercms opened this issue Apr 10, 2020 · 15 comments

Comments

@summercms
Copy link
Contributor

summercms commented Apr 10, 2020

Hello,

Sorry to mass open many issues, we have been running various tests against your repo on many browsers and see if your package can detect them or not?

We haven't finished yet and still running some tests and will open a few more issues up (probably)?

We just going through this list of browsers right now found here and running tests: https://udger.com/resources/ua-list#Browser

We hope to finish running tests in next few days (less than a week) and then start writing the pull requests!

So far your package is finding around 70% of the browsers - so good work.

Please can you tag me or message back when you are free and we can start working on a bunch of pull requests for you - to update this package and make it up to date. (It seems like it detects old browsers well and newer browsers not so well).

Lastly, we have put regex and notes on each issue to help with the pull requests. There are a few issues that we need to talk to you about versions and a few complicated fixes.

But we think we can code 98% of all the opened issues without any help.

We intend to add the UA's to the testing folder as well.

Kind regards,

Ayumi.

@NielsLeenheer

@mariotsi

@NielsLeenheer
Copy link
Member

NielsLeenheer commented Apr 13, 2020

Thanks for opening all of these issues and your willingness to create pull requests for it!

There is a lot of interesting information here, but I can also see some errors. And there may also be some fundamental differences to the approach this library is using.

Take for example the Maple browser on Samsung television devices. I'm conflicted on how to detect this. Maple is an internal code name for the browser, not a consumer facing name. It was always labeled as "Web Browser". To me that is a big distinction. What also not helps it that Samsung sometimes refers to Maple as a development platform (for HTML based smart tv apps) and apps build using that development platform sometimes also use the token Maple in the UA string. So far I've not shown the name here, but used Maple as an identifier that we are dealing with a Samsung television device.

Or take the Sony PSP browser. I know it is a NetFront based browser. But it can not be detected as "NetFront", because it is a browser build in house by Sony itself, based on NetFront technology and source code. It is not a NetFront browser released by the Access. I am also hesitant to call it the "PSP Browser" or something to that effect, because on the PlayStation itself it is labeled "Internet Browser". And "Internet Browser" is too generic to be used as a browser name for detection purposes".

I want to land as much of this as possible, but I do have to go over each individual item. I'm sure most can be landed as it, but some of the issues you've opened are not as straightforward as they seem.

So please, continue opening issues and making PR's, but I am hesitant to land all these changes as one big PR.

Relatively safe changes, like new browsers could be bundled together in one PR. But please use different commits in the PR for the different browsers. And please be aware that any change also requires that you add examples of the UA string to the test suite.
And changes should also not affect the existing UA strings in the test suite.

Any change that does change the detection of existing UA strings should definitely be in a separate PR, because it affects backwards compatibility.

Thanks again!
Niels

@summercms
Copy link
Contributor Author

@NielsLeenheer

Hi,

Just to let you know I've finished adding all the missing browsers. I have manually tested each one.

Fingers crossed you can merge them all.

Any changes or issues please tag me, because our company is using this package and when I was adding the browsers I was updating our api to match each one.

Many thanks,

Ayumi.

@NielsLeenheer
Copy link
Member

Thank you. I’ll go over the PRs. Given the huge number of them it may take a bit of time, but I think most of them can be merged without any issues.

@mariotsi
Copy link
Member

As soon as those PRs are merged and @ayumi-cloud work is done I will replicate the change in Parser-JavaScript. Thanks for the leg work here!

@summercms
Copy link
Contributor Author

@NielsLeenheer @mariotsi Hi, hope all is well, just wanted to ask. Would it be a good idea to merge all these pr's into a separate branch before adding them to the master branch. Then we can further test all of them for any conflicts etc.

@mariotsi
Copy link
Member

mariotsi commented Sep 1, 2020 via email

@summercms
Copy link
Contributor Author

Finished coding all the pr's I needed to add to this repo now.

Two issues I leave for you guys to code are: #255 and #253 as I'm not sure how to write the solutions for these?

Any issues with the pr's tag me and I will update the pr's accordingly.

Please can you add a new semantic version when all the pr's are merged so I can back test this repo for any issues etc.

Thanks.

@patrick-yi-82
Copy link

I was wondering when the next batch of pull requests will be merged?

@summercms
Copy link
Contributor Author

@NielsLeenheer @mariotsi

Just to let you know, I have now finished updating and creating pr's for this repo. Sorry to have created so many pr's I was coding my application at the same time as this repo and testing this repo as I was coding both repo's at the same time and fixing any problems that failed testing.

Please go ahead and start merging these pr's whenever you got free time.

Please tag me with any issues or any browser name changes as I have hard coded the the browser names into our api.

Thanks,

Ayu.

@mariotsi
Copy link
Member

mariotsi commented Dec 4, 2020

Thank you @ayumi-cloud . Sorry for the late response. Looks like @NielsLeenheer is currently busy. As soon as he check and approves the changes I'll apply them on the Parser-Javascript version.

@summercms
Copy link
Contributor Author

@mariotsi No problem, just tag me and I will keep a look out.

p.s. Travis no longer works anymore and needs to be moved over to Github Actions.

@summercms
Copy link
Contributor Author

@NielsLeenheer @mariotsi

I would be very grateful if you could create a new repo titled: whichbrowser/parser-laravel and upload all these files to it.

Link: https://github.com/ayumi-cloud/Parser-Laravel

(We're using Laravel and created this wrapper which I would prefer if it got maintained over here as an official wrapper).

Thanks.

@NielsLeenheer
Copy link
Member

My apologies for being really slow with responding. As @mariotsi mentioned, I am really busy at the moment and will look at all the changes in the coming weeks. @ayumi-cloud thanks so much for your patience so far.

I will probably have some time next week and I hope to be able to publish a release version before the years end. I'll also look at Travis and the Laravel wrapper.

@NielsLeenheer
Copy link
Member

I've processed a whole batch of PRs. Some as is, some slightly changed. I did use a clean commit for each of them, to get rid of unrelated files and changes in the original PR. This way I could process the changes much faster instead of having to rebase the PRs and revert some unrelated changes.

Unfortunately this is all I got time for during the Christmas break. I do hope to find some more time in the coming weeks and will look at the remaining PRs.

For now, I will release an updated version with all of changes so far.

Thanks!

@summercms
Copy link
Contributor Author

summercms commented Jun 24, 2021

It's now been over a year since I created the out standing pull requests.

Sorry I can't wait any longer and decided to merge all the pull requests on a separate repo.

I have rebased every pull request with the master and double checked all the code and updated the pull requests with your suggestions.

People are welcome to download and test out all the merged pull requests here:

https://github.com/summercms/sc-parser-module/releases

Any issues let me know and I will try and update the pull requests in both repos.

Please note that I've got cancer right now and need to start chemo in the coming weeks - so I maybe slow to reply and answer.

(I needed to merge and get this work done before I focus on my health).

Notes for admins:

Didn't add:

Repo has Chrome 90 and this pr has chrome 88 (not needed): #647
Additions in this pr has been added in other pr's (not needed): #107
Add more semantic constructors (not needed - pr can be deleted): #67

Added:

These two pr's are the exact same, so added just one of them: https://github.com/WhichBrowser/Parser-PHP/pull/532/files and #137

Add OhHai Browser: https://github.com/summercms/sc-parser-module/pull/218/files
Add CF-UC User Agent Bot: https://github.com/summercms/sc-parser-module/pull/221/files
Fix code error, replace with ": https://github.com/summercms/sc-parser-module/issues/190/files
Add Pandalytics bot: https://github.com/summercms/sc-parser-module/issues/137/files
Cleanup code: https://github.com/summercms/sc-parser-module/pull/222/files

Security:

Fixed CVE-2020-11022 and CVE-2020-11023 update phpunit to version 8.

https://github.com/summercms/sc-parser-module/issues/224
https://github.com/summercms/sc-parser-module/issues/225

PHP now requires:

"php": ">=7.3 || ^8.0"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants
@NielsLeenheer @patrick-yi-82 @mariotsi @summercms and others