[Shipper Pro] Several minor but important enhancements

Here’s a 4min video of my testing for reference for the list of suggestions: https://share.getcloudapp.com/E0ub079D

1)
Please add “Migration Filters” for Import, not only Export.

https://wpmudev.com/docs/wpmu-dev-plugins/shipper/#api-migration says:

Unlike the export function, files and databases tables cannot be excluded. Sites/networks must be moved in their entirety.

I want to import ONLY the database, for example. I shouldn’t have to initiate this from the site I’m importing from (export).

2)
The “Migration Filters” link is generic to https://wpmudev.com/docs/ but should be more specific, like https://wpmudev.com/docs/wpmu-dev-plugins/shipper/

3)
The docs don’t say if wildcard exclusions are allowed. For example, if I want to exclude “*” files or “wp-*” files — for when I want to draw down just the database.

4)
The file exclusion should have directories to navigate through so I can uncheck the ones I don’t want, just like the database tables.

5)
The pre-flight check incorrectly calculates package size (e.g. 2GB) when filters are in use, such as excluding all of “wp-content/” (e.g. 96MB)

6)
It’d be really nice if functionality like https://github.com/billerickson/BE-Media-from-Production#using-with-wp-migrate-db-pro existed in Shipper itself — both the “delta sync” (instead of full replace) and the ability to serve media from the live site to keep dev/staging/local working copies much lighter.

  • Adam
    • Support Gorilla

    Hi Clifford P

    I hope you’re well today and thank you for your feedback!

    I watched the video and and also reviewed Shipper against the points that you raised but I believe it will be best if I’ll just pass your message over to our Shipper development team directly, as it’s very essential and specific.

    I’ll wait for their response and either I or one of my colleagues will get back to you soon with information from our developers.

    Best regards,
    Adam

  • Clifford P
    • The Bug Hunter

    Thanks for the quick response.

    Please add another, #7:
    Via live chat, I discovered to import from live to local, you have to open your local to the point of seeing the Import’s progress bar for the live site’s Export to work. There should be a very obvious notice about this during Export, as it took quite a while to bundle/prep everything just to fail because local wasn’t ready to receive.

    This workflow feels inelegant. I get the idea that maybe you want to explicitly allow the export to be imported, confirming by getting to the progress bar stage, but it seems unnecessary. I went through all the Export prompts and that should be enough. I own both sites (as connected by my account) so I shouldn’t need to login to both sites.

    And the export’s check for the other site being available should happen before wasting time preparing the export.

    Thanks for considering my feedback. Trying to improve things for everyone :slight_smile:

  • Adam
    • Support Gorilla

    Hi Clifford P

    Thanks for response!

    I’ve also got some feedback from our Shipper developers and I think it’s some good news :slight_smile:

    1) Please add “Migration Filters” for Import, not only Export.

    Filters for Import are already “on the table” and are planned for the 1.2 release.

    Note please: whenever I write “planned” it means that we plan to implement in that release, although there might be slight delay depending on the QA tests’ results mostly – but it shouldn’t be a big delay and it’s a confirmed feature.

    2) The “Migration Filters” link is generic to https://wpmudev.com/docs/ but should be more specific, like https://wpmudev.com/docs/wpmu-dev-plugins/shipper/

    Yes, it will be fixed in the next version, sorry for overlooking that!

    3) The docs don’t say if wildcard exclusions are allowed. For example, if I want to exclude “*” files or “wp-*” files — for when I want to draw down just the database.

    It does support wildcards/pattern matching and it actually says so in exclusions option description, right below the exclusions box: “Enter one exclusion rule per line. We use patter matching to exclude files based on your exclusion rules”.

    However, you’re right – with docs currently pointing to “general” help rather than specific filter-related guide, it’s not that clear. And docs don’t explain that too.

    So thanks for pointing it out, we’ll improve the docs.

    4) The file exclusion should have directories to navigate through so I can uncheck the ones I don’t want, just like the database tables.

    Good point, it would certainly “make life easier”. We’ve just added it to the “to do” list of improvements for future releases. Thanks for suggesting it!

    5) The pre-flight check incorrectly calculates package size (e.g. 2GB) when filters are in use, such as excluding all of “wp-content/” (e.g. 96MB)

    It’s also already known and planned to be fixed in 1.2 release.

    6) It’d be really nice if functionality like https://github.com/billerickson/BE-Media-from-Production#using-with-wp-migrate-db-pro existed in Shipper itself — both the “delta sync” (instead of full replace) and the ability to serve media from the live site to keep dev/staging/local working copies much lighter.

    We do already have a task on the “to do” list of “incremental migration” and syncing one site with another which sounds similar to what you are suggesting. However, these particular features are quite complex and might also depend on other improvements/fixes. While we do have it planned “as features”, we don’t yet have any specific plans on in which release it could possibly be implemented so while I can confirm that it’s planned, I must honestly say that it might take some time before we get there.

    As for the #7 (raised in your last post), I admit I’m not quite sure if I got the point. I just tried to run the import migration on my own test sites and it “seemed” pretty “clear” to me what the steps are and what should I do. But I’m surely a bit “biased” here, being “used to it” so I might simply be missing something obvious.

    May I ask you for a bit more help with understanding this one? Would you be able to e.g. record a short video showing that particular issue/part of the process that you are suggesting to improve?

    I just want to better understand before I’ll talk to our developers, I’d appreciate it a lot!

    Best regards,
    Adam