joomla-extensions / patchtester Goto Github PK
View Code? Open in Web Editor NEWThis project forked from elkuku/patchtester
Patch testing extension for the Joomla! CMS
Home Page: https://issues.joomla.org
License: GNU General Public License v2.0
This project forked from elkuku/patchtester
Patch testing extension for the Joomla! CMS
Home Page: https://issues.joomla.org
License: GNU General Public License v2.0
I've seen a couple of people report when they get an error because username/password is incorrect on github they struggle to edit their passwords again (they have to go access the config via global configuration which clearly isn't ideal!)
Can we not display an "in component" error rather than blocking all access to the component?
When I was searching for microdata, I couldn't find anything - Microdata returned some results (all of which were using upper case M).
I'm not sure if there is a good reason for case sensitive searching but it was a little frustrating.
Can we create a new official build, because not all testers knows how to create a new build
How to reproduce the problem and/or test the patch:: You need to have curl extension disabled on php, and you will obtain this fatal error.
The issue can be reproduced by using 2.0 version of com_patch and by clicking on apply patch, then the issue happens.
Initial Comment:
Catchable fatal error: Argument 2 passed to JHttp::__construct() must implement interface JHttpTransport, boolean given, called in C:\wamp\www\joomla_master\libraries\joomla\http\factory.php on line 37 and defined in C:\wamp\www\joomla_master\libraries\joomla\http\http.php on line 42
It may be more useful to have a button next to the title of the issue, taking you to github, or jissues. At present the text is a hyperlink to github, when most of the time I need to go to jissues.
Can we add one more view with all the applied patches?
The reason I am asking for this is that if somebody applies a PR and later on the patch gets accepted the patch will not reveal itself in the list, and therefore is kinda hard to revert the patch from the environment.
As far as I checked there is a table in the db where the applied patches are stored, so it won’t be that hard to make one more view with a list of all this. (the data column also got the title, etc…)
And then clicking clear still shows nothing and you end up having to purge the cache to get anything to show
Searching by title seems to show ALL results whatever you search
Hi
I'm starting using the patchtester this week. Really a great work! But...
To see if there are still patches applied in my installation from my last test session/evening it would be helpful to be able to sort the 'status' column.
Sure, I could set the pagination set to 'all' and scroll down or use the browsers search (ctrl+f), but in my patchtester-instance the paginations 'list all' wont work somehow (J 3.4).
And again: concrats to this wonderful tool, it leads my to test patches on a regular basis from now.
In the old tracker the search field would also search for the pull ID, now it only searches the Joomlacode issue ID. It would be better to search on both as we often look for the pull ID.
An example is searching for pull ID 3362, it only shows Joomlacode issue IDs with this combination in it.
Due to company security restrictions I have Github two-step authentication activated
When I add my credentials (username & password) to com_patchtester I receive the following error:
An error has occurred.
401 Must specify two-factor authentication OTP code.
Would it be possible to extend functionality and have a filter allowing to see only currently applied PRs and/or sort on "Status"? That would make testing quite easier...
Thanks!
Sergio
One member of my PBF session has got this error when installing com_patchtester 2.0.0 Beta.
He has a WampServer with PHP 5.3.13.
After some checks in his PHP configuration, we find that its Socket Transport has no "SSL".
Solution :
Trying to install on postgres gives a sql error
Database query failed (error # %s): %s SQL=SELECT COUNT(*) FROM "s376f_patchtester_pulls" AS "a" LEFT JOIN "s376f_patchtester_tests" AS "t" ON t.pull_id = a.pull_id WHERE ("a"."title" LIKE '%4815%') OR ("a"."pull_id" LIKE '%4815%')
open the Options light box of Patch tester
set a wrong account in the options lightbox.
click on Save&close
click on the Fetch data bouton
a warning message must explain that the account is not correct.
the lightbox of "Fecth Data" open and display the followwing message :
"Preparing to fetch GitHub data
Making sure all is well to fetch data. Sit tight."
Patch tester : v2.0.0.beta2 October 2011
Tried to apply a new patch after testing a previous one
Now get the issue that it conflicts due to files still on the system
What do you need to know to sort this out ?
This is causing an issue with patch testing.
I tried to apply joomla/joomla-cms#6447 and received the following error
Fatal error: Class 'PatchTester\Model\JText' not found in /home/example/public_html/example.com/fresh/administrator/components/com_patchtester/PatchTester/Model/PullModel.php on line 168
The error after putting in credentials on a local install using Mamp on a Mac with latest Joomla testing version of Joomla:
error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol
In refactoring how data is retrieved and stored from GitHub, the current operation of fetching everything from GitHub then storing it all in the database is rather time consuming, and in some environments, could potentially cause timeouts or memory exhausted errors. Even on my system with a jacked up timeout setting and memory allotment, fetching the 500+ open PRs and storing to the database took close to two minutes and currently has zero user feedback; I had no idea if it was still running without refreshing the database table to see rows being added. This should be refactored to break it down into steps somewhat like the Smart Search indexer.
Installing on Joomla 2.5.17 and get fatal error:
Fatal error: Class 'JModelList' not found in /home/gwsd2/public_html/administrator/components/com_patchtester/models/pulls.php on line 18
The pagination buttons don't seem to work
Michael,
I'm experiencing at least a couple of blocking issues with com_patchtester 2.0.0.beta3 under Joomla! 3.4.2-dev (current staging):
Warning: Header may not contain more than a single header, new line detected in D:\UniServerZ\vhosts\dev\libraries\joomla\application\web.php on line 960
and
Error
An error has occurred.
1146 Table 'dev.j342_patchtester_pulls' doesn't exist SQL=SELECT COUNT(*) FROM `J342_patchtester_pulls` AS `a` LEFT JOIN `J342_patchtester_tests` AS `t` ON t.pull_id = a.pull_id
My system information:
PHP Built On Windows NT SMZ 6.3 build 9200 (Windows 8.1 Business Edition) i586
Database Version 5.6.23
Database Collation utf8_general_ci
PHP Version 5.4.39
Web Server Apache
WebServer to PHP Interface apache2handler
Joomla! Version Joomla! 3.4.2-dev Development [ Ember ] 21-March-2015 20:30 GMT
Joomla! Platform Version Joomla Platform 13.1.0 Stable [ Curiosity ] 24-Apr-2013 00:00 GMT
User Agent Mozilla/5.0 (Windows NT 6.3; WOW64; rv:37.0) Gecko/20100101 Firefox/37.0
I'm testing the Patchtester on a local system with a Git client synchronized Cms clone. I first got a red + a blue message when I applied a patch. i.e.didn't work.
A day later I get no patches listed at all. My credentials are set in the options and should be ok.
Is there a personal restriction or is it a repository restriction? I found some restrictions mentioned in the GitHub Api doc referring to "you". Or is it a bug?
Error message:
Notice:
The GitHub API rate limit has been reached for this resource, could not
connect to GitHub for updated data. The rate limit will reset at
2013-12-10 15:27:28
People who help out with testing patches need to test patches that have 0 or 1 tests,
but not the issues that are marked as RTC.
The Patch Tester Component also shows issues that have been marked RTC.
Is it possible to add an extra selection filter to only show items that are not marked as RTC?
Thanks!
During the Dutch PBF in Dordrecht a user told me about this error, but I don't have more information. Just sending it to you so you know about it. After install the had an error referring to
administrator/components/com_patchtester/PatchTester/View/Pulls/tmpl/default.php
line 17-20
Later he enabled OpenSSL and downgraded to the beta (he was using beta2) and it was gone.
That's all I know.
$listOrder = $this->escape($this->state->get('list.ordering'));
$listDirn = $this->escape($this->state->get('list.direction'));
$filterApplied = $this->escape($this->state->get('filter.applied'));
$sortFields = $this->getSortFields();
With current master apply https://github.com/joomla/joomla-cms/pull/5271/files
You will get this message:
Message
COM_PATCHTESTER_NO_FILES_TO_PATCH
Patch successfully applied
Apart from the untranslated message it claims that the patch was successfully applied, but it wasn´t.
I'm unsure if this a problem with com_patchtester, but maybe someone "in the know" would like to give a look at what's happening with Joomla PR #4661 (joomla/joomla-cms#4661), where applying it through com_patchtester apparently has side effects on unrelated code...
If I search the list of issues for something which is not found, I get nothing displayed, and the full pagination as if all items were being listed.
Expected behaviour would be:
The patch tester (i'm assuming uses diff) which ignores binary files. We just wasted 3 hours debugging an issue with a pull request that had ttf and woff fonts which are binary and were not getting applied.
Either the patchtester needs a way to handle binary files OR at a minimum give a notice that filex was not copied
Build an integration to the issue tracker to enable commenting and recording test results for a PR within the component. This will probably be an added button next to the "Revert Patch" button that opens a modal with the input form.
Pagination appears to be broken (although it's partially broken on the old non-alpha release as well where you can't navigate from page 4 to 5)
When building a package from the current git files installation went fine, but invoking patchtester in the administration results in an errror:
0 Layout Path Not Found
I seems that the template file are not installed in the right directory.
After installing beta2 of Patch Tester, the install success message displays as language string.
COM_INSTALLER_INSTALL_SUCCESS
Update patching process to skip files not including in the standard CMS distribution. Attempting to apply a PR which includes a change in the tests folder, for example, causes a failure.
When I am using com_patchtester I am unable to sort the patches by the status column. This means that if I have applied a patch which is many pages in, I have to either know the ID of the patch or the name of the patch to find it - I can't quickly see if anyon patches are applied in my installation.
It would be ideal if you could sort the patches by the status column to quickly see if any patches are currently applied.
To reproduce:
Error 400: Invalid request will appear at the top of the page along with PHP error:
Fatal error: Class 'JToolBarHelper' not found in /path/to/joomla/administrator/components/com_patchtester/views/pulls/view.html.php on line 119
Checking the patched files administrator/includes/toolbar.php and administrator/includes/subtoolbar.php both contain the 400 text.
e.g. search for 1495 in the Pull Id box and press search. You get no results (possibly related to previous cache issue.) Note the results still stay blank if you press clear in the box. The only way to get a list of data is to click on purge cache
I applied this patch joomla/joomla-cms#6340 and than revert it.
Result: the complete index.php of issis was removed.
Not like it used to be think so :-)
Fresh install of 3.3 - links to Joomlacode show an error in the modal:
Error
Call to undefined function renderAssociationList()
To reproduce:
Results in error:
Fatal error: Class 'JSubMenuHelper' not found in /var/www/html/pbf33/administrator/modules/mod_submenu/mod_submenu.php on line 12
Checking administrator/includes/toolbar.php shows class JSubMenuHelper exists and refreshing the page rectifies the problem.
1- Click "Options"
2- In field "GitHub Account Password", insert "@"
3- Go to "Joomla! Patch Tester" and fetch data
Fetching data from github
Javascript error when fetching
ReferenceError: Joomla is not defined in fetcher.js line 62
jQuery('#patchtester-progress-header').text(Joomla.JText._('COM_PATCHTESTER_FETC...
Not sure if this more of a duplicate of issue #47, as the actual installation of the component worked, but when trying to apply patches it gives the following error;
Error
Database query failed (error # %s): %s SQL=INSERT INTO "dg20d_patchtester_tests" ("pull_id","data","patched_by","applied","applied_version") VALUES (4844,'[{"action":"modified","index":"5040f9d..7028758 100644","old":"administrator/components/com_config/view/application/html.php","new":"administrator/components/com_config/view/application/html.php","body":"model->getForm();\n\t\t\t$data = $this->model->getData();\n\t\t\t$user = JFactory::getUser();\n\t\t}\n\t\tcatch (Exception $e)\n\t\t{\n\t\t\tJFactory::getApplication()->enqueueMessage($e->getMessage(), ''error'');\n\n\t\t\treturn false;\n\t\t}\n\n\t\t// Bind data\n\t\tif ($form && $data)\n\t\t{\n\t\t\t$form->bind($data);\n\t\t}\n\t\t// Get the params for com_users.\n\t\t$usersParams = JComponentHelper::getParams(''com_users'');\n\n\t\t// Get the params for com_media.\n\t\t$mediaParams = JComponentHelper::getParams(''com_media'');\n\n\t\t// Load settings for the FTP layer.\n\t\t$ftp = JClientHelper::setCredentialsFromRequest(''ftp'');\n\n\t\t$this->form = &$form;\n\t\t$this->data = &$data;\n\t\t$this->ftp = &$ftp;\n\t\t$this->usersParams = &$usersParams;\n\t\t$this->mediaParams = &$mediaParams;\n\n\t\t$this->components = ConfigHelperConfig::getComponentsWithConfig();\n\t\tConfigHelperConfig::loadLanguageForComponents($this->components);\n\n\t\t$this->userIsSuperAdmin = $user->authorise(''core.admin'');\n\n\t\t$this->addToolbar();\n\t\tJFactory::getApplication()->input->set(''hidemainmenu'', true);\n\n\t\treturn parent::render();\n\t}\n\n\t/**\n\t * Add the page title and toolbar.\n\t *\n\t * @return void\n\t *\n\t * @SInCE\t3.2\n\t */\n\tprotected function addToolbar()\n\t{\n\t\tJToolbarHelper::title(JText::_(''COM_CONFIG_GLOBAL_CONFIGURATION''), ''equalizer config'');\n\t\tJToolbarHelper::apply(''config.save.application.apply'');\n\t\tJToolbarHelper::save(''config.save.application.save'');\n\t\tJToolbarHelper::divider();\n\t\tJToolbarHelper::cancel(''config.cancel.application'');\n\t\tJToolbarHelper::divider();\n\t\tJToolbarHelper::help(''JHELP_SITE_GLOBAL_CONFIGURATION'');\n\t}\n}\n"}]',67,1,'3.3.7-dev') RETURNING id
Please try to apply joomla/joomla-cms#6140. You should get this error:
PHP Fatal error: Class 'PatchTester\Model\JText' not found in C:\Program Files (x86)\Ampps\www\joomla34\administrator\components\com_patchtester\PatchTester\Model\PullModel.php on line 168, referer: http://localhost/joomla34/administrator/index.php?option=com_patchtester&view=pulls
It would be good to have a limit on the number of items retrieved from Github. We could have a kind of filter to get the last x items or only get the PR ID that is set in the search box or only for a given time limit. Just some ideas from the top of my head.
My testing environment:
When I try to apply path #3292 I get the following error:
Error
Database query failed (error # %s): %s SQL=INSERT INTO "zbjnd_patchtester_tests" ("pull_id","data","patched_by","applied","applied_version") VALUES (3292,'[{"action":"modified","index":"18d5a53..10bd3b9 100644","old":"modules/mod_articles_archive/helper.php","new":"modules/mod_articles_archive/helper.php","body":"\n\n
Applying the same patch using the same testing environment with mysql went find.
Needed to create the file in order to apply the patch.
Considering files are only removed when they exist, the patch should not fail.
We need to rename the configuration labels. Users put in their own username and password in the Github username and Github Repository fields. A rename to something like Github project username and Github project Repository.
Can't install since about a day or so ago (can't locate the exact SHA of working commit if you'd like). I get that error when attempting to install the package. /components/com_patchtester is created, but is empty 💔
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.