-
-
Notifications
You must be signed in to change notification settings - Fork 810
Dev meeting 2017 05 16
Gawain Lynch edited this page May 20, 2017
·
3 revisions
- 3.3 beta/release progress see tracker #6001 (@Bob)
- Twig 2 … getting it over the line (@GawainLynch)
- Run-time globals, e.g. Frontenend records, etc, need to be transitioned in core, including
base-2016
- Run-time globals, e.g. Frontenend records, etc, need to be transitioned in core, including
e.g.
- Status on drop bear invasion (@YourGitHubID)
- Twig 2 PR (@GawainLynch)
[19:30]
gawainlynch ping @bob @carson @sahassar @ross
[19:30]
sahassar pong
[19:30]
bob
Pong!
[19:31]
gawainlynch OK, easy one first: 3.3 beta/release progress see tracker #6001 (@bob)
[19:31]
boltissueball #6001 [open] [Tracker] Bolt 3.3 Release Blocking Issues https://github.com/bolt/bolt/issues/6001
[19:31]
gawainlynch Carson, want to update on your last bits?
[19:31]
bob
same status as last week, right?
[19:31]
gawainlynch Nope
[19:31]
Further
[19:31]
bob
ok.
[19:32]
gawainlynch In case he's caught up, I reviewed the full branch this morning, and Carson decided to split it in 3 … so the ScriptHandler one remains
[19:32]
…and it's lovely (edited)
[19:32]
carson #6681
[19:32]
boltissueball #6681 [open] [WIP] ScriptHandler updates https://github.com/bolt/bolt/pull/6681
[19:32]
bob
Nice..
[19:32]
gawainlynch …and there it is
[19:33]
Ok, so that is those … then the README PR on collection and we should be GTG
[19:33]
Now … the fun one
[19:33]
* Twig 2 … getting it over the line (@gawainlynch)
* Run-time globals, e.g. Frontenend records, etc, need to be transitioned in core, including `base-2016`
[19:34]
Globals are pretty much all that is holding that branch back
[19:34]
carson The only global is record
[19:35]
gawainlynch … pager and a couple of others b-end
[19:35]
bob
I am still not entirely clear on what/how it will break.
[19:35]
gawainlynch But to get tests across the line … we need a base template that behaves correctly
[19:35]
bob
I mean, i think we can pass in record with the `render()`, right?
[19:35]
gawainlynch @bob: Twig fatals
[19:36]
carson My thought for that was to have `ContentStack` or `ContentDataCollector`. Somehow those automatically get populated from queries or event listeners. The we can point extensions to the new code
[19:36]
bob
That I get, but the specifics of what needs to be done to fix, that makes it more complex than passing in record with the render
[19:36]
carson Yes we will pass in `record` as the context when rendering twig. No problems there. But we have code that does `$twigEnv->getGlobals()['records']` and that fails
[19:36]
gawainlynch ^
[19:37]
bob
In core? or only in extensions?
[19:37]
carson It’s not twig that’s the problem
[19:37]
@bob both
[19:37]
gawainlynch ^
[19:37]
carson It’s the fact that we are abusing twig’s globals array in php
[19:38]
bob
https://twig.sensiolabs.org/doc/1.x/deprecated.html#extensions
twig.sensiolabs.org
Deprecated Features - Documentation - Twig - The flexible, fast, and secure PHP template engine
Twig - The flexible, fast, and secure template engine for PHP
[19:38]
boltissueball Extensions documentation is available at https://docs.bolt.cm/extensions
[19:38]
bob
> As of Twig 1.23, the Twig_ExtensionInterface::getGlobals() method is deprecated. Implement Twig_Extension_GlobalsInterface to avoid deprecation notices.
[19:38]
Is that not helpful to work around it?
[19:39]
carson Nope
[19:39]
gawainlynch Different fish
[19:39]
It is the timing of setting of globals that is the problem (edited)
[19:39]
carson What we are doing right now is no different than saying `global $record`
[19:40]
Yes there are ways to “work around” twig’s deprecation notices. But we should address the real problem here, not try to work around it
[19:41]
gawainlynch (as opposed to the getter)
[19:41]
bob
ok
[19:41]
gawainlynch can't type
[19:41]
gawainlynch So … are we good with cleaning this up, first pass b-e templates, second pass base-2016?
[19:41]
… third pass docs
[19:41]
carson There are no changes needed in templates
[19:42]
bob
I can obvs work on base-2016, once i have a grip on what needs changing
[19:42]
gawainlynch Doesn't scope come into play though, Carson?
[19:42]
bob
(if any, that is)
[19:42]
carson Nope
[19:42]
At least I don’t think so…
[19:43]
Are globals allowed in places where context is not passed in?
[19:43]
gawainlynch I thought with inheritance it can, the globals will always be there
[19:43]
carson Same with context
[19:43]
gawainlynch `{{ … with foo }} `
[19:44]
carson The only places it won’t are `includes with only` and possibly `macros`
[19:44]
gawainlynch ^
[19:44]
They are where I think we have some hangovers
[19:44]
bob
Macro use should be limited regardless.
[19:44]
gawainlynch Macros should :fire:
[19:44]
bob
But, macro’s have local scope only.. Not even globals.
[19:45]
carson @bob ok that’s what I thought
[19:45]
@gawainlynch `with` is not a problem it just adds to the context. But if you say `only` then current context is removed.
[19:45]
bob
So, while i agree that we should phase out macros, I don’t think they will be a problem with this particular change. (edited)
[19:45]
carson So after quick scan we are ok there
[19:45]
gawainlynch Ah, OK … I thought they could access the global scope … I must be wrong
[19:45]
@bob: Yes, agreed (edited)
[19:46]
OK, let's call that a :+1: … and one of us can get onto the PHP side very soon :wink:
[19:46]
carson The code to remove globals is already in place too.
[19:46]
bob
okido
[19:46]
carson It’s the twig_globals flag in `Base::render`
[19:47]
We just need to adjust the `getGlobals()['record']` usage
[19:47]
gawainlynch Ah, I missed that conditional landing … OK, further along than I thought
[19:48]
carson Yes :)
[19:48]
gawainlynch I have a six hour hospital visit tomorrow … with only me and my laptop … hmmmmm
[19:48]
:wink:
[19:49]
bob
Ah, well, that’s 50/50 good :wink:
[19:49]
gawainlynch Better … this is for the hormone tests … been waiting *months* for this appt.
[19:50]
Anyway, does anyone have things to raise, apart from the Titanic?
[19:50]
bob
Yes.
[19:50]
I’d like to add #6677 and #6648 as blocking for 3.3, unless objections
[19:50]
boltissueball #6677 [open] Corrupt images break "View Files" page. https://github.com/bolt/bolt/issues/6677
[19:50]
#6648 [open] Smoother transition for "notfound_image" for bolt 3.2 -> 3.3 https://github.com/bolt/bolt/issues/6648
[19:51]
carson No objections
[19:51]
gawainlynch I'm fine … we can clean it up easily I am sure
[19:51]
Could you handle updating the tracker for those please, Bob
[19:52]
bob
yup, will do
[19:52]
gawainlynch OK, well if there is nothing more then
[19:52]
bob
Not from me
[19:52]
gawainlynch #meeting
[19:52]
boltissueball </meeting> Failed parsing XML: 'hug' expected, No 'love' shown for bot. Program 'meeting' terminated.
[19:54]
bob
oh, I had one thing i forgot.
[19:54]
gawainlynch :ear:
[19:54]
bob
@carson How far away are we from tagging a 1.0 on collections? or even a beta?
[19:55]
carson We can tag a beta right now.
[19:55]
bob
I can’t package beta’s because the dependencies can’t be resolved on beta 6 and up
[19:55]
an 1.0-beta would fix that
[19:55]
carson I just want to clean up the readme and double check a couple things
[19:56]
Have just been busy with the 3000 lines of new code from those PRs I just did :wink:
[19:56]
bob
No immediate rush, but “somewhere this week” would be great. :slightly_smiling_face:
[19:57]
carson Will see what I can do
[19:58]
bob
Awesome, thanks