Follow up from #2050835: Move Widget, Formatter, and FieldType plugin types to the Core\Field system. That issue moved formatters and widgets, but not field types, because according to #2050835-34: Move Widget, Formatter, and FieldType plugin types to the Core\Field system, moving field types might be better to do after #2047229: Make use of classes for entity field and data definitions is done.
However, we now have a situation where both Plugin/field and Plugin/Field directories exist, which may be a problem on case-insensitive or case-semisensitive file systems. Marking this issue critical for that, unless someone knows for sure that it's not a problem.
Comments
Comment #1
BerdirThat might be a pretty serious problem actually, has anyone tested to clone/pull on Windows since this got in? I think it's not part of alpha4, right?
Comment #2
smiletrl CreditAttribution: smiletrl commentedI get this problem, after git pull
http://snag.gy/qzRro.jpg
Comment #3
BerdirYeah, thought so, that's not good, we might want to revert.
Comment #4
smiletrl CreditAttribution: smiletrl commentedOr start to move field types?
I personally don't see much conflict with #2047229: Make use of classes for entity field and data definitions. But it would be definitely good to move the last two field types #2015687: Convert field type to FieldType plugin for taxonomy module and #2015689: Convert field type to typed data plugin for options module asap.
Comment #5
BerdirThere might be fewer conflicts now, as it doesn't contain the list_type changes anymore, yes, so we could possibly just move them.
Comment #6
BerdirOk...
Here's an attempt to remove those, let's see what the testbot has to say.
Two patches. The first just contains the necessary renames to get rid of the Field/field propblem. The second one also moves \Drupal\Core\Entity\Field and \Drupal\field\Plugin\Type\FieldType into \Drupal\Core\Field. Especially the second part is huge and changes all formatters and widgets *again*, as they all type hint on the classes that we are moving. And will conflict with quite a few patches.
The second patch also fixes all implements/overrides that use the old class names to @inheritdoc and removes a few now unnecessary use's.
Providing both as I have two commits anyway, we could go with the first one, but in a way, it would be backwards because the second would then touch most changes again and break things a second time.
Comment #8
BerdirMissed on class and the parent:: thing seems like a PHPStorm move bug. Missed a few namespace changes in the big patch. This should do better.
interdiff for each patch, having fun with juggling commits around with git rebase...
Comment #9
BerdirComment #10
amateescu CreditAttribution: amateescu commentedReview of the big one. It's just PHPStorm doing its thing..
.
:)
.
.
.
.
Comment #11
BerdirYep, PHPStorm is storming.. no idea why it messes some up...
Comment #13
BerdirA few fixes.
Comment #15
BerdirFixed the last parent:: and two inline-namespace lines.
Comment #16
Berdir...
Comment #17
amateescu CreditAttribution: amateescu commentedLooks good now.
Comment #18
alexpottCommitted 3ded221 and pushed to 8.x. Thanks!
Comment #19
yched CreditAttribution: yched commentedW00t! Awesome, thanks guys :-)
The plugin managers look like they're still exposed by field.module's services.yml ? (same for the cache bins they use)
Comment #20
Berdir#2050835: Move Widget, Formatter, and FieldType plugin types to the Core\Field system already moved them to core.services.yml, field type was actually already there?
Comment #21
yched CreditAttribution: yched commentedOh, ok - sorry, still away from my coding env till tomorrow :/
Comment #22
smiletrl CreditAttribution: smiletrl commentedHere's the change record https://drupal.org/node/2119163. It only tells the folders of discovery change.
Comment #23
yched CreditAttribution: yched commentedI don't think this should deserve a change notice, this is a D8/D8 change. Rather, existing change notices about widgets / formatters / field types as plugins should be updated ?
Comment #24
BerdirYes, I'm working on updating those right now.
I thought a separate change notice was unnecessary at first too, but we started writing short change notices about HEAD to HEAD changes, just to get a notification out. Quite a few people are already working on porting/writing 8.x modules. I'll probably shorten it down a bit, things like where services are defined aren't relevant.
Comment #25
BerdirDone, see #2050835-48: Move Widget, Formatter, and FieldType plugin types to the Core\Field system
Comment #26
yched CreditAttribution: yched commentedThanks a lot :-)
HEAD to HEAD change notifs: true, notifications are cool - I'm just a bit worried that people browsing the collection of change notifs have no way of telling the difference (7/8 changes vs 8/8 changes) ?