New revs

Nao

  • Dadman with a boy
  • Posts: 16,082
Re: New revs
« Reply #2295, on October 29th, 2013, 11:22 PM »
rev 2295
 6 files changed, 128 insertions(+), 111 deletions(-), 4.07 KiB (I'm assuming SVN would have given me twice that size :P)

* Several caching improvements, mostly around Memcached. I only needed to ensure that wedge.org could clean the user cache correctly for an upcoming site update, and I ended up rewriting plenty of things. Silly me... (ManageServer.php, Subs-Admin.php, Subs-Cache.php, ManageSettings.language.php)

  ! Fixed a dirty bug where Memcached just didn't work in Wedge (AFAIK it also won't work well in SMF).
  * Improved code for Memcached path (more specifically, the Memcache extension), by turning $memcached into a static.
  * Fall back to file-based cache if the Memcached server is currently down.
  * Added support for Zend shared-memory caching (zend_shm_*).
  * Calling clean_cache on the regular file cache will now attempt to clear the cache for APC, XCache, Memcached and Zend.
  * Admin page won't show the Memcached text input if it's not available in the first place.
  * Improved wording of admin page's help text. Seriously, it was messed up, especially when it came to Memcached.
  * More accurate detection of accelerators in admin page.
  * Various commenazi, and spacinazi.

@ Note: XCache documentation is non-existent, so it's possible this won't work for it. As for Zend, they don't have a (documented) way to clean their old cache system, and I don't have access to any of these cache APIs anyway (except APC which I need to test), so I don't know if it'll succeed removing Zend's key/value cache, but it's worth a try.

@ I'm too lazy to update smfinfo.php... I don't think it even has a chance of making its way into a final package, anyway. Also too lazy to look into the Memcached extension for now (right now, Wedge uses the Memcache extension, which does the same job, but is older or something.)
Re: New revs
« Reply #2296, on October 31st, 2013, 08:27 AM »
rev 2296
 8 files changed, 78 insertions(+), 44 deletions(-), 11.20 KiB (okay, so that's totally unrelated to changes, or something...)

+ Added better membergroup support to privacy lists. Admins can use any group; members can use any groups they're in, as well as post-based groups they're in, or used to be in (i.e. less posts). Until now, they could only select from groups they were in. (Class-System.php)

+ Privacy selector is now more generic. Needs a bit more work, but I'm getting close... (script.js)

! Contact list privacy was not inclusive enough. (Class-System.php)

* Renamed some 'contacts' strings to 'list', to harmonize with 'group'. (Post.php, Security.php, index.language.php)

* More bits on the privacy system. (Thoughts.template.php, index.template.php)
Re: New revs
« Reply #2297, on October 31st, 2013, 03:01 PM »
rev 2297
 6 files changed, 58 insertions(+), 14 deletions(-), 4.28 KiB

! Fixed another bug in the privacy/contact list system not being inclusive enough. Phew... (Class-System.php)

+ Added privacy list icons. This is a tentative version, but it's good enough for now. Adds 500+ bytes to the CSS file. Gotta live with it... (Profile.template.php, index.member.css, contacts.png * 2)

+ ...But I'm not the kind of guy who'll give up against adversity. Chrome and Safari 6+ support CSS filters (not the IE ones!), so for them, I've replaced the privacy icon sprite with a single icon which gets colorized on the fly, saving... Approximately 500 bytes. So, you get the privacy list icons for free. (index.member.css, privacy.gif)
Re: New revs
« Reply #2298, on November 1st, 2013, 09:52 PM »
rev 2298
 6 files changed, 33 insertions(+), 37 deletions(-), 1.72KiB

- Duplicate text in profiles. (Profile.template.php)

* Tweaked debug junk to prevent styled non-links in ViewQuery, and incorrectly styled links in page bottoms. (Subs-Template.php, ViewQuery.php, index.css)

* Reverted html tag's height tweak from the 24 Oct commit, because it created other issues (as I expected), and instead modified sidebar animation to always restore overflow after animating. (script.js, index.css, sections.css)

! And another fix (hopefully the last one) for the sidebar opener code, preventing it to trigger when an HTML tag is located inside an anchor. (script.js)
Re: New revs
« Reply #2299, on November 2nd, 2013, 11:22 PM »
rev 2299
 5 files changed, 32 insertions(+), 16 deletions(-), 1.95 KiB

+ Thought privacy now shows list type icons, instead of the generic list icon. (Security.php, script.js)

+ Ported the PrivacySelector code to PHP, so that it can also be hardcoded into the page HTML. Although I'm not sure I'll use that eventually (my plan is to go fully JS), it's still nice to have for now. (Security.php)

+ Topic privacy also gets list type icons, of course. (Post.template.php)

! Fixed thought privacy showing, in edit mode, the 'Admin' icon when selecting the 'Members' privacy type. (script.js)

! Translation error. (Login.french.php)

- Removed some unused code. (Post.php)
Re: New revs
« Reply #2300, on November 3rd, 2013, 05:53 PM »
rev 2300
 8 files changed, 449 insertions(+), 9.08 KiB

+ Welcome to Wilde! The spiritual replacement to Wuthering (which will eventually fade away) takes everything I liked from it, restore some Weaving neutrality, and then adds a touch of silliness and an organic background. Still a work in progress, though! (skins/Wilde/*)
Re: New revs
« Reply #2301, on November 3rd, 2013, 11:10 PM »
rev 2301
 5 files changed, 102 insertions(+), 68 deletions(-), 3.51 KiB

+ Support for >=, <= and !== in variable tests. The first two are really new, the latter is just a synonym of !=, since Wess always does loose matching anyway. (Class-System.php)

+ Finally added support for mixing variable and constant tests, e.g. you can do @if (admin || ($status == "admin")) && !ie; it is important to note this convention: if you're using a literal string that's the same as a Wedge system constant, you need to surround it in quotes (as in the example above). Otherwise, Wess will consider it to be the value of that constant, instead of the string itself. (Class-CSS.php, Class-System.php)

+ Added support for a few globals to Wess tests: $settings, $theme and $txt. I guess the latter is less useful, and I'm not going to add support for $txt like I did for JS files, but you could still want to use it for hacks (e.g. holding non-translation data in a variable). Also, $theme already has a similarly named variable, but it relies on logic: use $theme to get the theme's URL, and $theme&#91;'var'] to get a theme variable. (Subs-Cache.php)

+ Support for '@else if' in addition to @elseif in Wess. (Class-CSS.php)

! Fixed a couple of bugs with brackets use in Wess. Mostly, the line of CSS below failed, because Wess expected the first bracket to represent a surrounding bracket, rather than the first part in a long series of tests. As a result, it created an infinite loop, which I'll also be accounting for from now on (albeit in a crude way), because I don't want people to come with me with support requests because they forgot to close a bracket somewhere. (Class-CSS.php)

* Avoid redundant keywords in CSS filenames: between 'admin', 'member' and 'mUSERID', there can be only one. Thus, only the most specific of the three will remain. mID > admin > member. (Subs-Cache.php)

! Very, very bad commenazi. (index.css)

! Don't output #junk definitions if you can't see debug info in the first place. It saves about 5 lines of CSS, and it required two days of work and all the changes above. You can definitely say I'm an optimization freak. But seriously, the variable rewrite had been in my to-do list for too long. (index.css)

@ For the curious, the CSS line in question is:

$view_junk = $settings&#91;'db_show_debug_who_log']
@if $view_junk == "any" || (admin && $view_junk == "admin") || (member && ($view_junk == "regular" || $view_junk == "mod"))
...
Posted: November 3rd, 2013, 11:04 PM

And forgot to log this:

* Small color tweaks to make headers and linktree a bit brighter. (Wilde/extra.css)
Re: New revs
« Reply #2302, on November 4th, 2013, 06:45 PM »
rev 2302
 53 files changed, 4 insertions(+), 31.98 KiB

+ Added, to the attic, my Cyna smiley set, originally designed for my Cyna and Noisen websites. Since it's a mash-up between my own roxxor skillz and other smiley sets, I won't be distributing it alongside Wedge, but still, it's nice to have a copy around. (other/images/cyna/*)
Re: New revs
« Reply #2303, on November 4th, 2013, 11:59 PM »
rev 2303 -- this one's been in my commit list for weeks, waiting for the triple-check I mentioned below.
 10 files changed, 35 insertions(+), 25 deletions(-), 8.14 KiB

* Harmonized some board/topic permissions. (Display.php, Load.php, MessageIndex.php, Subs-MembersOnline.php, Display.template.php, MessageIndex.template.php)

  - The problem lies in how permissions are handled. 'moderate_forum' is actually a permission to manage members, while 'moderate_board' is set if the user can moderate the current board (depending on their permission profile).
   - I added a failsafe for board owners, they should now have moderate_board permissions on their boards, even if not allowed (but not if explicitly denied). While it's a feature that's not yet fully implemented, I have a weird belief that if you create a board, you should have complete power over it, its posts, comments, and whatever, regardless of your current group.
   - Board moderators can also now view hidden members reading their boards, and they can see IPs associated to posts in them. Previously, these two features were only for member managers.
   - Board owners can now modify their board settings directly from the topic list. Well, I need to actually allow for that in the admin area, but... Bear with me.

* Moved media permissions to the left of the permission manager page. It's not a great place thematically, but at this point, I care more about visual harmony. (ManagePermissions.php)

- Removed some unused code, some dating back to the oldSMF era. (Groups.php, Memberlist.php)

* Spacinazi. (ManagePermissions.template.php)

@ Note: if you're unhappy with my decisions regarding board permissions, please feel free to discuss it on the forum.
@ Also, this is totally untested, especially since I'm an admin on my test board. Go figure. But I've triple-checked the code, should be fine.
Re: New revs
« Reply #2304, on November 6th, 2013, 05:11 PM »
rev 2304
 4 files changed, 32 insertions(+), 30 deletions(-), 1.73 KiB

+ Post date and post modified date are now both correctly machine-readable. I spent weeks pondering over the fact that it added many bytes to topic pages, but I've saved tons of HTML bytes overall, and it never increases the gzipped size by more than a hundred bytes or so anyway. Note: the readable date format can be shortened by using a string instead of a constant, if necessary. (JSModify.php, Msg.template.php, sections.css)

* I'm quite amused by my use of the 'ins' tag (inserted data, as opposed to deleted data) for the last modified date. Well, there's nowhere else I could have used that anyway, ah ah... (Msg.template.php, sections.css)

! Fixed some issues with the way Wedge was showing the last modified date, especially on quick edit. (JSModify.php)

- Another useless line. (Profile-Modify.php)
Re: New revs
« Reply #2305, on November 6th, 2013, 11:58 PM »
rev 2305 -- part one of my CSS fixes and updates. Including the header font size fix, ah ah!
 10 files changed, 81 insertions(+), 65 deletions(-), 3.64 KiB

* Many changes to the color converter in Wess, to make it more predictable. (Class-CSS.php)

  - Renamed 'stronger' to 'strength', 'darker' and 'lighter' to just 'luma', and '(de)saturated' to just 'saturation'.
  - Added an alias to 'luma', i.e. 'brightness', if you find it easier to grasp.
  - Regarding the above (and 'channels'), you may now 'force' a destination value by not using a sign.
  - If you still want to apply a value relative to the existing one, add a + or - sign before the number.
  - So, basically, darker($color, 10%) is now luma($color, -10%), and saturated($color, 10%) is now saturation($color, +10%)
  - As always, luma($color, -.1) applied to a color with a luma of 50% (.5) results in .4; luma($color, -10%) gets you .45, of course.

* These changes were applied to... (common.css, index.css, index.member.css, sections.css, Wilde/extra.css, Warm/extra.css, Wuthering/extra.css, Wine/common.css, Wine/extra.css)

! Fixed header border radius. (Wilde/extra.css)

! Fixed header font size. A long requested one... (Wine/extra.css, Warm/extra.css, Wuthering/extra.css)

* Better header font. My goal was mainly to remove Georgia from the list, because the latest Chrome Mobile will now substitute a serif font for it, instead of falling back to sans-serif as requested. (Wilde/extra.css)
Re: New revs
« Reply #2306, on November 7th, 2013, 01:49 PM »
rev 2306
 3 files changed, 3 insertions(+), 3 deletions(-), 1006 bytes

+ Wess can now also handle $context variables. Dunno why I forgot about this one, but... (Subs-Cache.php)

! Fixed a minor bug in quick edit causing an XML error popup to show up. (JSModify.php)

! Last nail in the header font size bug's coffin. Pretty much. It's not really a bug, you see, it's just a series of commits I'm always postponing, and the codebase ends up being desynchronized. (index.css)
Re: New revs
« Reply #2307, on November 8th, 2013, 03:37 PM »
rev 2307
 2 files changed, 9 insertions(+), 10 deletions(-), , 1.05 KiB

* ! $context tests in Wess weren't ready yet. Well, now they are. (Subs-Cache.php)

! Variable tests in Wess would be added to a variable stored in the database settings. No need to pollute it with these, as well as the 'true' keyword, so I made sure to strip them off. Or out? What's the correct English word for that? Anyway, it also saves a couple of extra mandatory we::is tests per page load, even when everything is cached. (Subs-Cache.php)

! Tested Wedge in the latest Maxthon, using Chrome 26, and it still doesn't accept unprefixed CSS like gradients etc, so I thought a bit about it, and decided to simply up the minimum version for unprefixing to 27, to give forks some time to sort out their stuff. Or off. Nah, must be out. Not a big deal, since v26 is long past for mainline Chrome users anyway. The only thing that bothers me is that the comments are now incorrect, but whatever, I'm sure I'm the only one who checks out prefix usage at caniuse.com anyway. (Class-CSS.php)
Re: New revs
« Reply #2308, on November 8th, 2013, 04:05 PM »
rev 2308
 1 file changed, 58 insertions(+), 40 deletions(-), 1.37 KiB

* Rewrote the we::is parser for sanity. (Class-System.php)

  + Adds support for operator-less variable testing (i.e. != "").
  * Deals with bracket grouping in a better and more readable way. Finally, I get to remove a dirty hack!
  ! Fixes problems with variable testing, notably with loose checks, and variables like 'admin' being parsed as the admin constant.
  ! Also fixes negative tests. Up until now, "!$var == true" was seen as "!($var == true)", now it's "(!$var) == true", which is 95% the same, but at least it's more logical.
Re: New revs
« Reply #2309, on November 8th, 2013, 04:12 PM »
rev 2309
 3 files changed, 23 insertions(+), 14 deletions(-), 1.34 KiB (same size for much less code? Doesn't seem too trustworthy to me, then...)

+ News feature (Random news and newsfader) will now only output and cache their CSS if they're enabled in the first place, and yes, it's a nice thing to have, and even if it serves as an example of what plugins should be able to do in the future, I'm glad I can save these bytes, eh. (ManageNews.php, index.css, sections.css)

! The $view_junk variable definition needed double double quotes (not a typo!), in order for the test to understand its values as strings, not constants. Silly me. (index.css)