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

Property namespace disappears (1.27) #1424

Closed
mwjames opened this issue Feb 29, 2016 · 32 comments

Comments

@mwjames
Copy link
Contributor

commented Feb 29, 2016

#1410 noted that "But, when I refresh the page, it disappears:", so I tried to replicate the issue on MediaWiki 1.27.0-alpha (c2f1c25) with the following steps:

refs #1295

Create a property

image

which shows an empty page after the save.

image

Special:RecentChanges

Switching to Special:RecentChanges one can see that the Property NS has disappeared.

image

Doing a normal refresh on Special:RecentChanges page causes the NS to reappear.

image

If we now move back to the Property:Foo page then it shows the expected content without any additional edit or refresh.

image

@mwjames mwjames added the mediawiki label Feb 29, 2016
@mwjames

This comment has been minimized.

Copy link
Contributor Author

commented Feb 29, 2016

@cicalese "This is probably not significant, but if I refresh the page again, "Modification date" changes from text to a link" @kghbln "Ouch, so this is worse than I had hoped.", exactly I don't know what changed in 1.27 or why this happens. Maybe some static doesn't get cleared or contains uninitialized settings, who knows but it is clear this only happens with 1.27.

If I add something to our NamespaceManager the issue seems to go away but I have no idea as to why 1.27 would need this. Given this issue and the failing integrations test, my confidence in the upcoming 1.27 release is becoming less and less favourable.

@@ -109,10 +109,12 @@ class NamespaceManager {
        foreach ( $instance->buildNamespaceIndex( $globalVars['smwgNamespaceIndex'] ) as $ns => $index ) {
            if ( !$instance->isDefinedConstant( $ns ) ) {
                define( $ns, $index );
            };
        }
+
+       $GLOBALS['wgExtraNamespaces'] = $GLOBALS['wgExtraNamespaces'] + self::getCanonicalNames();
    }

PS: Again, figuring out the cause have cost me again a fair amount of time and this is more than annoying.

@cicalese

This comment has been minimized.

Copy link
Contributor

commented Feb 29, 2016

Wow, I guess it was significant after all. I will have to test some of our wikis under MW 1.27, since we make heavy use of custom namespaces.

@mwjames

This comment has been minimized.

@kghbln

This comment has been minimized.

Copy link
Member

commented Mar 8, 2016

That's how I replicate the issue on translatewiki.net which is running master:

To get the namespaces back after they vanish I just have to click "purge". Another purge does not cause the namespaces to vahish. To make them disappear one has to edit the page (namespaces still there after saving). To make them vanish one has to click "purge" again. After a second purge they are appearing again.

@mwjames

This comment has been minimized.

Copy link
Contributor Author

commented Mar 8, 2016

@cicalese This issue is expected to be solved by #1440 and it would be marvellous if you could give this a spin as long as I can remember what I did before my short-term memory releases itself. When testing 1.27 maybe you could run a quick composer phpunit from the SMW root directory (see also #1295 (comment)).

@cicalese

This comment has been minimized.

Copy link
Contributor

commented Mar 9, 2016

@mwjames, great! I will try to find time to test it today.

@jpadfield

This comment has been minimized.

Copy link

commented Mar 9, 2016

@mwjames

I have just tried:
Mediawikik: 1.27.0-alpha (01bae7b)
Semantic Mediawiki: 2.4-alpha (49d9dee)

The test wiki works and I can add in a basic property [[Has prop::Thing]] the property is now displayed correctly in the fact box with a link to the page [[Property:Has_prop]]. I have not tried out any more complex processes yet, but I have noticed that the [[Special:Properties]] still seems to be missing, should it be working again as well ?

Thanks

@mwjames

This comment has been minimized.

Copy link
Contributor Author

commented Mar 9, 2016

but I have noticed that the [[Special:Properties]] still seems to be missing, should it be working again as well ?

Works for me on 1.27.0-alpha (3387e84c765b).

image

image

@jpadfield

This comment has been minimized.

Copy link

commented Mar 9, 2016

Interesting, can you recommend how I might track down the issue ? There do not seem to be any JS or apache errors and nothing is brought up with
$wgShowExceptionDetails = true;
$wgShowSQLErrors = true;
$wgDebugDumpSql = true;
$wgShowDBErrorBacktrace = true;

screenshot from 2016-03-09 15 03 51
screenshot from 2016-03-09 15 03 07

@mwjames

This comment has been minimized.

Copy link
Contributor Author

commented Mar 9, 2016

The only thing I can think of is that something is clearing the $GLOBALS['wgSpecialPages']. Maybe an extension that is going rogue?

@jpadfield

This comment has been minimized.

Copy link

commented Mar 9, 2016

OK I will try turning things off and let you know what I find. thanks

@jpadfield

This comment has been minimized.

Copy link

commented Mar 9, 2016

Ah, sorry, I had not updated the extension list in this wiki and it still included the "ConfirmEdit" extension. Removing this one seems to have solved the [[Special:Properties]] problem. I will now explore more complex set ups. Thank you for your help :-)

@cicalese

This comment has been minimized.

Copy link
Contributor

commented Mar 13, 2016

@mwjames, I just had a chance to test (using vagrant), and it works fine under 1.27.0-alpha (1fc2672). I repeated your Property:Foo test above. I had no issues with the property namespace in my testing. The display title functionality worked, too.

Below are the results of running composer phpunit from the SMW root directory. There was an error, but it was different from the ones at the link above.

vagrant@mediawiki-vagrant:/vagrant/mediawiki/extensions/SemanticMediaWiki$ composer phpunit

php ../../tests/phpunit/phpunit.php -c phpunit.xml.dist
PHPUnit already present
Using HHVM 3.12.1 (5.6.99-hhvm)

Semantic MediaWiki: 2.4-alpha (SMWSQLStore3, mysql)
MediaWiki: 1.27.0-alpha (MediaWiki vendor autoloader)
Site language: en

Execution time: 2016-03-13 10:11
Xdebug: Disabled (or not installed)

PHPUnit 4.8.23 by Sebastian Bergmann and contributors.

Runtime: HHVM 3.12.1
Configuration: /vagrant/mediawiki/extensions/SemanticMediaWiki/phpunit.xml.dist

............................................................. 61 / 3583 ( 1%)
............................................................. 122 / 3583 ( 3%)
............................................................. 183 / 3583 ( 5%)
............................................................. 244 / 3583 ( 6%)
............................................................. 305 / 3583 ( 8%)
............................................................. 366 / 3583 ( 10%)
............................................................. 427 / 3583 ( 11%)
............................................................. 488 / 3583 ( 13%)
............................................................. 549 / 3583 ( 15%)
............................................................. 610 / 3583 ( 17%)
............................................................. 671 / 3583 ( 18%)
............................................................. 732 / 3583 ( 20%)
............................................................. 793 / 3583 ( 22%)
............................................................. 854 / 3583 ( 23%)
............................................................. 915 / 3583 ( 25%)
............................................................. 976 / 3583 ( 27%)
............................................................. 1037 / 3583 ( 28%)
............................................................. 1098 / 3583 ( 30%)
............................................................. 1159 / 3583 ( 32%)
............................................................. 1220 / 3583 ( 34%)
............................................................. 1281 / 3583 ( 35%)
............................................................. 1342 / 3583 ( 37%)
............................................................. 1403 / 3583 ( 39%)
............................................................. 1464 / 3583 ( 40%)
............................................................. 1525 / 3583 ( 42%)
............................................................. 1586 / 3583 ( 44%)
...................................FF........................ 1647 / 3583 ( 45%)
............................................................. 1708 / 3583 ( 47%)
............................................................. 1769 / 3583 ( 49%)
............................................................. 1830 / 3583 ( 51%)
............................................................. 1891 / 3583 ( 52%)
............................................................. 1952 / 3583 ( 54%)
............................................................. 2013 / 3583 ( 56%)
............................................................. 2074 / 3583 ( 57%)
............................................................. 2135 / 3583 ( 59%)
............................................................. 2196 / 3583 ( 61%)
............................................................. 2257 / 3583 ( 62%)
............................................................. 2318 / 3583 ( 64%)
............................................................. 2379 / 3583 ( 66%)
............................................................. 2440 / 3583 ( 68%)
............................................................. 2501 / 3583 ( 69%)
............................................................. 2562 / 3583 ( 71%)
............................................................. 2623 / 3583 ( 73%)
............................................................. 2684 / 3583 ( 74%)
............................................................. 2745 / 3583 ( 76%)
............................................................. 2806 / 3583 ( 78%)
............................................................. 2867 / 3583 ( 80%)
............................................................. 2928 / 3583 ( 81%)
............................................................. 2989 / 3583 ( 83%)
.............[Sun Mar 13 22:12:35 2016] [hphp] [11052:7fb469006100:0:000001] []
Fatal error: Cannot access protected property SMWQuantityValue::$m_unitin
Script php ../../tests/phpunit/phpunit.php -c phpunit.xml.dist handling the phpunit event returned with an error

[RuntimeException]
Error Output:

phpunit [--dev] [--no-dev] [--] []...

@mwjames

This comment has been minimized.

Copy link
Contributor Author

commented Mar 13, 2016

Fatal error: Cannot access protected property SMWQuantityValue::$m_unitin
Script php ../../tests/phpunit/phpunit.php -c phpunit.xml.dist handling the phpunit event returned with an error

Interesting, something is trying to access a protected property probably some extension. Can you list which extensions are activated and try running composer phpunit -- --debug which hopefully give us an idea where this is happening (doesn't happen on any of our Travis runs). It could also be a HHVM 3.12.1 thing since Travis only runs on HHVM 3.6.

@mwjames

This comment has been minimized.

Copy link
Contributor Author

commented Mar 13, 2016

Fatal error: Cannot access protected property

Related to HHVM:

@mwjames

This comment has been minimized.

Copy link
Contributor Author

commented Mar 13, 2016

As described in https://phabricator.wikimedia.org/T124163 something like assert( '$this->m_unitfactors[$this->m_unitin] != 0 /* Should be filtered by initConversionData() */' ); fails on HHVM.

A minimal validation case can be found at [1].

[0]

assert( '$this->m_unitfactors[$this->m_unitin] != 0 /* Should be filtered by initConversionData() */' );

[1] https://3v4l.org/RJJ3P

@cicalese

This comment has been minimized.

Copy link
Contributor

commented Mar 14, 2016

Here are the interesting bits from composer phpunit -- --debug:

vagrant@mediawiki-vagrant:/vagrant/mediawiki/extensions/SemanticMediaWiki$ composer phpunit -- --debug
> php ../../tests/phpunit/phpunit.php -c phpunit.xml.dist '--debug'
PHPUnit already present
Using HHVM 3.12.1 (5.6.99-hhvm)

Semantic MediaWiki: 2.4-alpha (SMWSQLStore3, mysql)
MediaWiki:          1.27.0-alpha (MediaWiki vendor autoloader)
Site language:      en

Execution time:     2016-03-14 12:28
Xdebug:             Disabled (or not installed)

PHPUnit 4.8.23 by Sebastian Bergmann and contributors.

Runtime:        HHVM 3.12.1
Configuration:  /vagrant/mediawiki/extensions/SemanticMediaWiki/phpunit.xml.dist


Starting test 'SMW\Test\ContentParserTest::testCanConstruct'.
.


...


Starting test 'SMW\Tests\IntlTimeFormatterTest::testFormat with data set #3 ('2/1300/11/02/12/03/25.888499949', 'Y-m-d H:i:s.u', '1300-11-02 12:03:25.888500 JL')'.
F
Starting test 'SMW\Tests\IntlTimeFormatterTest::testFormat with data set #4 ('2/1300/11/02/12/03/25.888499949', 'H:i:s.u', '12:03:25.888500')'.
F


...


Starting test 'SMW\Tests\Integration\ByJsonScript\ByJsonScriptFixtureTestCaseRunnerTest::executeTestCasesFor with data set "f-0204.json" ('/vagrant/mediawiki/extensions...4.json')'.
[Mon Mar 14 00:29:44 2016] [hphp] [11225:7f3764582100:0:000001] []
Fatal error: Cannot access protected property SMWQuantityValue::$m_unitin
Script php ../../tests/phpunit/phpunit.php -c phpunit.xml.dist handling the phpunit event returned with an error



  [RuntimeException]
  Error Output:


phpunit [--dev] [--no-dev] [--] [<args>]...


@cicalese

This comment has been minimized.

Copy link
Contributor

commented Mar 14, 2016

Only SMW and SRF and their dependencies are installed. Here's Special:Version:

Installed software
Product Version
MediaWiki   1.27.0-alpha (1fc2672)
07:54, 13 March 2016
HHVM    3.12.1 (srv)
MySQL   5.5.47-0ubuntu0.14.04.1
ICU 4.8.1.1
Entry point URLs
Entry point URL
Article path    /wiki/$1
Script path /w
index.php   /w/index.php
api.php /w/api.php
load.php    /w/load.php
Installed skins
Skin    Version License Description Authors
Vector  – (48eca02) 19:54, 12 March 2016  GPL-2.0+    Modern version of MonoBook with fresh look and many usability improvements  Trevor Parscal, Roan Kattouw and others
Installed extensions
Semantic extensions
Extension   Version License Description Authors
Semantic MediaWiki  2.4-alpha (f61009b) 00:41, 13 March 2016    GPL-2.0+    Making your wiki more accessible - for machines and humans (online documentation)   Markus Krötzsch, Jeroen De Dauw, James Hong Kong and others
Semantic Result Formats 2.3 GPL-2.0+    Additional result formats for Semantic MediaWiki queries    James Hong Kong, Stephan Gambke, Jeroen De Dauw, Yaron Koren and others
DataValues
Extension   Version License Description Authors
DataValues  1.0 GPL-2.0+    Collection of objects representing various kinds of values  Jeroen De Dauw
DataValues Common   0.2.3   GPL-2.0+    Contains common implementations of the interfaces defined by DataValuesInterfaces   Jeroen De Dauw
DataValues Interfaces   0.1.5   GPL-2.0+    Defines interfaces for ValueParsers, ValueFormatters and ValueValidators    Jeroen De Dauw
DataValues Validators   0.1.2   GPL-2.0+    Contains common ValueValidator implementations  Jeroen De Dauw and The Wikidata team
Other
Extension   Version License Description Authors
ParserHooks 1.5.0   GPL-2.0+    OOP interface for creating MediaWiki parser hooks in a declarative fashion  Jeroen De Dauw
Installed libraries
Library Version License Description Authors
composer/installers 1.0.23  MIT A multi-framework Composer library installer    Kyle Robinson Young
composer/semver 1.2.0   MIT Semver library that offers utilities, version constraint parsing and validation.    Nils Adermann, Jordi Boggiano and Rob Bast
cssjanus/cssjanus   1.1.2   Apache-2.0  Convert CSS stylesheets between left-to-right and right-to-left.    
data-values/common  0.2.3   GPL-2.0+    Contains common implementations of the interfaces defined by DataValuesInterfaces   Jeroen De Dauw
data-values/data-values 1.0.0   GPL-2.0+    Defines the DataValue interface and some trivial implementations    Jeroen De Dauw
data-values/interfaces  0.1.5   GPL-2.0+    Defines interfaces for ValueParsers, ValueFormatters and ValueValidators    Jeroen De Dauw
data-values/validators  0.1.2   GPL-2.0+    Common ValueValidator implementations   Jeroen De Dauw and The Wikidata team
doctrine/instantiator   1.0.5   MIT A small, lightweight utility to instantiate objects in PHP without invoking their constructors  Marco Pivetta
jakub-onderka/php-parallel-lint 0.9.2   BSD-2-Clause    This tool check syntax of PHP files about 20x faster than serial check. Jakub Onderka
justinrainbow/json-schema   1.6.1   BSD-3-Clause    A library to validate a json schema.    Bruno Prieto Reis, Justin Rainbow, Igor Wiedler and Robert Schönthal
liuggio/statsd-php-client   1.0.18  MIT Statsd (Object Oriented) client library for PHP Giulio De Donato
mediawiki/at-ease   1.1.0   GPL-2.0+    Safe replacement to @ for suppressing warnings. Tim Starling and MediaWiki developers
mediawiki/mediawiki-codesniffer 0.6.0   GPL-2.0+    MediaWiki CodeSniffer Standards 
mediawiki/parser-hooks  1.5.0   GPL-2.0+    Adds a OOP and declarative parser hook interface on top of MediaWiki    Jeroen De Dauw
monolog/monolog 1.17.2  MIT Sends your logs to files, sockets, inboxes, databases and various web services  Jordi Boggiano
nikic/php-parser    1.4.1   BSD-3-Clause    A PHP parser written in PHP Nikita Popov
nmred/kafka-php 0.1.5   BSD-3-Clause    Kafka client for php    
onoi/blob-store 1.1.0   GPL-2.0+    A simple interface to manage schema-free temporal persistent key/values mwjames
onoi/cache  1.2.0   GPL-2.0+    A minimalistic cache adapter interface library  mwjames
onoi/callback-container 1.0.0   GPL-2.0+    A simple callback container registry library    mwjames
onoi/event-dispatcher   1.0.0   GPL-2.0+    A minimalistic interface to relay generic events to registered listeners    mwjames
onoi/http-request   1.3.0   GPL-2.0+    A minimalistic http/curl request interface library  mwjames
onoi/message-reporter   1.0.0   GPL-2.0+    An interface to report and relay arbitrary messages to registered handlers  Jeroen De Dauw and mwjames
oojs/oojs-ui    0.16.2  MIT Provides library of common widgets, layouts, and windows.   Timo Tijhof, Bartosz Dziewoński, Ed Sanders, James D. Forrester, Kirsten Menger-Anderson, Rob Moen, Roan Kattouw, Trevor Parscal, Kunal Mehta and Prateek Saxena
oyejorge/less.php   1.7.0.10    Apache-2.0  PHP port of the Javascript version of LESS http://lesscss.org   Matt Agar, Martin Jantošovič and Josh Schmidt
param-processor/param-processor 1.2.2   GPL-2.0+    Parameter processing library    Jeroen De Dauw
phpdocumentor/reflection-docblock   2.0.4   MIT     Mike van Riel
phpspec/prophecy    1.6.0   MIT Highly opinionated mocking framework for PHP 5.3+   Konstantin Kudryashov and Marcello Duarte
phpunit/php-code-coverage   2.2.4   BSD-3-Clause    Library that provides collection, processing, and rendering functionality for PHP code coverage information.    Sebastian Bergmann
phpunit/php-file-iterator   1.4.1   BSD-3-Clause    FilterIterator implementation that filters files based on a list of suffixes.   Sebastian Bergmann
phpunit/php-text-template   1.2.1   BSD-3-Clause    Simple template engine. Sebastian Bergmann
phpunit/php-timer   1.0.7   BSD-3-Clause    Utility class for timing    Sebastian Bergmann
phpunit/php-token-stream    1.4.8   BSD-3-Clause    Wrapper around PHP's tokenizer extension.   Sebastian Bergmann
phpunit/phpunit 4.8.23  BSD-3-Clause    The PHP Unit Testing framework. Sebastian Bergmann
phpunit/phpunit-mock-objects    2.3.8   BSD-3-Clause    Mock Object library for PHPUnit Sebastian Bergmann
psr/log 1.0.0   MIT Common interface for logging libraries  PHP-FIG
sebastian/comparator    1.2.0   BSD-3-Clause    Provides the functionality to compare PHP values for equality   Jeff Welch, Volker Dusch, Bernhard Schussek and Sebastian Bergmann
sebastian/diff  1.4.1   BSD-3-Clause    Diff implementation Kore Nordmann and Sebastian Bergmann
sebastian/environment   1.3.5   BSD-3-Clause    Provides functionality to handle HHVM/PHP environments  Sebastian Bergmann
sebastian/exporter  1.2.1   BSD-3-Clause    Provides the functionality to export PHP variables for visualization    Jeff Welch, Volker Dusch, Bernhard Schussek, Sebastian Bergmann and Adam Harvey
sebastian/global-state  1.1.1   BSD-3-Clause    Snapshotting of global state    Sebastian Bergmann
sebastian/recursion-context 1.0.2   BSD-3-Clause    Provides functionality to recursively process PHP variables Jeff Welch, Sebastian Bergmann and Adam Harvey
sebastian/version   1.0.6   BSD-3-Clause    Library that helps with managing the version number of Git-hosted PHP projects  Sebastian Bergmann
serialization/serialization 3.2.1   GPL-2.0+    Library defining a Serializer and a Deserializer interface and basic utilities  Jeroen De Dauw
squizlabs/php_codesniffer   2.5.1   BSD-3-Clause    PHP_CodeSniffer tokenizes PHP, JavaScript and CSS files and detects violations of a defined set of coding standards.    Greg Sherwood
symfony/yaml    3.0.3   MIT Symfony Yaml Component  Fabien Potencier and Symfony Community
wikimedia/assert    0.2.2   MIT Provides runtime assertions Daniel Kinzler
wikimedia/avro  1.7.7   Apache-2.0  A library for using Apache Avro with PHP.   Michael Glaesemann, Andy Wick, Saleem Shafi, A B, Doug Cutting and Tom White
wikimedia/base-convert  1.0.1   GPL-2.0+    Convert an arbitrarily-long string from one numeric base to another, optionally zero-padding to a minimum column width. Brion Vibber and Tyler Romeo
wikimedia/cdb   1.3.0   GPL-2.0+    Constant Database (CDB) wrapper library for PHP. Provides pure-PHP fallback when dba_* functions are absent.    Tim Starling, Chad Horohoe and Ori Livneh
wikimedia/cldr-plural-rule-parser   1.0.0   GPL-2.0+    Evaluates plural rules specified in the CLDR project notation.  Tim Starling and Niklas Laxström
wikimedia/composer-merge-plugin 1.3.1   MIT Composer plugin to merge multiple composer.json files   Bryan Davis
wikimedia/ip-set    1.0.1   GPL-2.0+    Efficiently match IP addresses against a set of CIDR specifications.    Brandon Black
wikimedia/php-session-serializer    1.0.3   GPL-2.0+    Provides methods like PHP's session_encode and session_decode that don't mess with $_SESSION    Brad Jorsch
wikimedia/relpath   1.0.3   MIT Compute a relative filepath between two paths.  Ori Livneh
wikimedia/running-stat  1.1.0   GPL-2.0+    PHP implementations of online statistical algorithms    Ori Livneh
wikimedia/utfnormal 1.0.3   GPL-2.0+    Contains Unicode normalization routines, including both pure PHP implementations and automatic use of the 'intl' PHP extension when present Brion Vibber
wikimedia/wrappedstring 2.0.0   MIT Automatically compact sequentially-outputted strings that share a common prefix / suffix pair.  Timo Tijhof
zordius/lightncandy 0.23    MIT An extremely fast PHP implementation of handlebars ( http://handlebarsjs.com/ ) and mustache ( http://mustache.github.io/ ).    Zordius Chen
Parser extension tags
<gallery>, <indicator>, <info>, <nowiki>, <pre> and <smwdoc>
Parser function hooks
anchorencode, ask, basepagename, basepagenamee, bidi, calendarenddate, calendarstartdate, canonicalurl, canonicalurle, cascadingsources, concept, declare, defaultsort, displaytitle, filepath, formatdate, formatnum, fullpagename, fullpagenamee, fullurl, fullurle, gender, grammar, info, int, language, lc, lcfirst, localurl, localurle, namespace, namespacee, namespacenumber, ns, nse, numberingroup, numberofactiveusers, numberofadmins, numberofarticles, numberofedits, numberoffiles, numberofpages, numberofusers, padleft, padright, pageid, pagename, pagenamee, pagesincategory, pagesize, plural, protectionexpiry, protectionlevel, revisionday, revisionday2, revisionid, revisionmonth, revisionmonth1, revisiontimestamp, revisionuser, revisionyear, rootpagename, rootpagenamee, set, set_recurring_event, show, smwdoc, special, speciale, subjectpagename, subjectpagenamee, subjectspace, subjectspacee, subobject, subpagename, subpagenamee, tag, talkpagename, talkpagenamee, talkspace, talkspacee, uc, ucfirst and urlencode
@mwjames

This comment has been minimized.

Copy link
Contributor Author

commented Mar 14, 2016

Starting test 'SMW\Tests\IntlTimeFormatterTest::testFormat with data set #3 ('2/1300/11/02/12/03/25.888499949', 'Y-m-d H:i:s.u', '1300-11-02 12:03:25.888500 JL')'.
F
Starting test 'SMW\Tests\IntlTimeFormatterTest::testFormat with data set #4 ('2/1300/11/02/12/03/25.888499949', 'H:i:s.u', '12:03:25.888500')'.
F

Was reported with facebook/hhvm#6899.

Fatal error: Cannot access protected property SMWQuantityValue::$m_unitin

Caused by facebook/hhvm#5128.

@mwjames

This comment has been minimized.

Copy link
Contributor Author

commented Mar 14, 2016

HHVM related issues are now tracked in #1456.

@mwjames

This comment has been minimized.

Copy link
Contributor Author

commented Mar 14, 2016

I just had a chance to test (using vagrant), and it works fine under 1.27.0-alpha (1fc2672). I repeated your Property:Foo test above. I had no issues with the property namespace in my testing. The display title functionality worked, too.

Closing this issues as solved based on the feedback received.

@mwjames mwjames closed this Mar 14, 2016
@mwjames

This comment has been minimized.

Copy link
Contributor Author

commented Apr 7, 2016

@kghbln Just to reiterate on the issue (after I used a vanilla 1.27 where the NS disappeared), 1.27 requires enableSemantics in the LocalSettings.

@kghbln

This comment has been minimized.

Copy link
Member

commented Apr 7, 2016

1.27 requires enableSemantics in the LocalSettings.

Isn't this standard operating procedure even in earlier versions before?

@mwjames

This comment has been minimized.

Copy link
Contributor Author

commented Apr 7, 2016

Isn't this standard operating procedure even in earlier versions before?

Should be but as I'm novice in installing SMW, I forgot about it and suddenly the described issue appeared in front of my eyes and I was on the verge on jumping off the roof.

@kghbln

This comment has been minimized.

Copy link
Member

commented Apr 7, 2016

Should be but as I'm novice in installing SMW

Let's put it in other words: too easy to see right away. ;) Just looked at the wiki. This is documented so at least this part of the docu is cool.

@cicalese

This comment has been minimized.

Copy link
Contributor

commented Apr 7, 2016

@mwjames, speaking as somebody who does install SMW regularly, especially on wiki farms, I would dearly love if "enableSemantics" were replaced by the (now) standard MediaWiki "wfLoadExtension". SMW could then be installed by composer but enabled in the standard MediaWiki manner. In addition to making sure that nobody else would be tempted to jump off the roof after forgetting to enable the extension like you did, this would also allow the classes, rather than being autoloaded by composer to be autoloaded by extension.json - enabling selective loading on wikis in a wiki farm. If the issue is not that you object to this functionality but instead merely that you do not see it as important because you do not often install SMW, I would be happy to work with others to propose a patch that would provide this functionality to SMW in a clean manner.

@mwjames

This comment has been minimized.

Copy link
Contributor Author

commented Apr 7, 2016

extension like you did, this would also allow the classes, rather than being autoloaded by composer to be autoloaded by extension.json

This is a no-go-zone and a technical flaw of the extension.json system because PSR-4 is a well established approach that works beyond something like MediaWiki and Composer is there to handle those in a manner other FOSS projects have recognized.

If the issue is not that you object to this functionality but instead merely that you do not see it as important

I may not install SMW on a regular basis but on the contrary I do see it as an important requirement but my conclusion on the implementation of the so called extension.json has not met my expectation (conceptional and technical implementation wise, some of which are outlined in #1367 (comment)).

My fear is that with a half-backed system such as extension.json it will become a maintenance nightmare for extension that really require dependency management.

For example, if the mentioned hack from #1367 (comment) no longer works, SMW is on its own to fix issues it hasn't introduced (and I'm really tired on fixing WMF related issues).

I would be happy to work with others to propose a patch that would provide this functionality to SMW in a clean manner.

I (or better we) welcome any attempt the make the installation more adaptable if it doesn't introduce trojan horses.

That said, as long as #1367 (comment) isn't violated, I won't block the introduction of extension.json but I will not provide any support (in terms of time or code review) for anything related to extension.json now or in future.

While all this may sound rather negative, it should not discourage you or others from attempting to improve the current situation.

@cicalese

This comment has been minimized.

Copy link
Contributor

commented Apr 8, 2016

Thank you, @mwjames. Your position is certainly fair. I do intend to look into this further when I have the time to dedicate to it.

@kghbln

This comment has been minimized.

Copy link
Member

commented Apr 30, 2016

Today I installed my first MW 1.26.x with SMW 2.3.1 and bang all namespaces provided by SMW are gone. So I updated to SMW master to mitigate this and bang the namespaces are there but i18n for all of them is gone and bang my head bangs directly on the table in front of me. Now I join @mwjames in being extremely grumpy about MW 1.26+

@kghbln

This comment has been minimized.

Copy link
Member

commented Jun 15, 2016

I do not think that MW 1.26 is fully compatible with SMW. I should not have skipped this branch on sandbox to prove this. :|

@mwjames

This comment has been minimized.

Copy link
Contributor Author

commented Jun 17, 2016

[0] Seb35 did some digging on this issue. I should just bill WMF for the hours I had to spend on fixing this.

[0] https://phabricator.wikimedia.org/T138068#2388228

@kghbln

This comment has been minimized.

Copy link
Member

commented Jun 17, 2016

Now I join @mwjames in being extremely grumpy about MW 1.26+

I detected a loop here. :(

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants
You can’t perform that action at this time.