Problem/Motivation
First of all, I am really sorry for the inconvenience.
This is a tough decision that has been bothering me for quite a while. I intended to postpone it till Slick 3.x, but the underlying problem is not making it any better.

This not only happens to Slick, but also Media, Scald, Masonry, etc. So nothing new.
Some take years to decide, some quicker.

However I'll do my best to make the transition as smooth and easy as possible. So hopefully nobody gets hurt with this.

The main reasons behind this decision are:

  • Having slick_views inside Slick 2.x makes the move to Slick 3.x a bit harder, as Slick 3.x will not have it.
  • And renaming it as a separate project to views_slick is not a better option.
  • Also having one in the package and the other separated with the same name is not good option either as it will add another extra maintenance which is already inevitable with slick_fields by now.

Hopefully having slick_views outside the slick 2.x also allows it to get matured properly. So it is not only about being slimmer.

Final structures
What about slick_fields, et al?
slick_fields and slick_ui are kept within Slick 2.x till full release.
slick_devel and slick_example are moving to separate projects when time allows, hopefully prior to another proper/beta release. The last two can also stick to the package if it is too much for separate projects. I would appreciate second opinions.

2.x will have slick_fields and slick_ui.
3.x will have slick_ui.
3.x will see, and break apart slick_fields into 3 separate projects, only when it is out and time allows:

  • slick_image
  • slick_media
  • slick_field_collection

Why not slick_fields is also removed? I have no abundant energy to break it apart now, nor in the immediate future. The above is the best that time allows since 3.x is non-existent yet now.

If anything I am not aware of, or any better idea, or you have a strong opposition, please let me know.

Proposed resolution
Move the following into separate projects:

  • slick_views, a placeholder is created
  • slick_devel
  • slick_example

Remaining tasks
Delete old 3 sub-modules from slick 2.x package.
Create separate projects named as three above accordingly.

Priority tasks

  1. slick_views
    • Delete slick_views from slick 2.x package.
    • Create a separate project named slick_views.
    • To avoid WSOD at front end, be sure to run update.php which clears the registry, and or clear cache completely.
  2. slick_example
  3. slick_devel

Below are the breakdown of the slick_views moving. The rest of sub-modules should be less trickier.

Possible data loss
None. It is all about restructuring/ moving around modules properly.

Possible problem
Slick views blocks are temporarily gone, maybe WSOD at that particular page.
Visiting Slick Views UI should be WSOD, so refrain.
Please see Solutions below for smooth transition.

How hard is the possible problem
Hitting "Clear all caches" button, or drush cc all accordingly, should clear the issue.
Also added a hook_update() for beta2 users to clear registry to ensure no WSOD after updates via UI.

Solutions

  1. Prior to updating and placing the new slick_views outside slick, be sure to open cache clearing admin page:
    - admin/config/development/performance
  2. Start extracting the new slick, and place the new slick_views module outside slick directory.
    Deleting entire old slick directory and placing new is recommended.
    However if the update is replacing old directory, be sure to delete old slick_views as the new one outside.
  3. Hit "Clear all caches" button. It should be safe now. A hook_update() is also provided for beta2 users when doing updates via Drupal UI.

Slick views should be back.

API changes
None

Profit
Not only modular and slimmer, but also separated projects away.

Non-Profit Disadvantages
It is no longer a one click download.

Recommendation
If just start building slicks with slick_views, it is recommended to use the separate project slick_views outside the package anytime, and drop the one inside it. This may help transition better to beta2, or later.

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

  • gausarts committed 2b4392e on 7.x-2.x
    Remove slick_views, and moved it into http://dgo.to/slick_views
    Issue #...
gausarts’s picture

The Slick views is now a separate project: Slick views

gausarts’s picture

Issue summary: View changes

  • gausarts committed f969460 on 7.x-2.x
    Issue #2497079: Move some sub-modules into separate projects
    
gausarts’s picture

Issue summary: View changes
Status: Active » Fixed

The Slick devel and Slick example are now separate projects: Slick extras

Still lotsa room for improvement. Some gag may update just as awkwardly:
Your body looked too big modular for my tiny little me.
I am sure he didn't mean to hurt her, he just didn't know the perfect match for his.

Feel free to re-open if any issue with this change.
Feel free to change my mind should you have compelling suggestions to remove the slick_fields.module as well.

Thanks.

gausarts’s picture

Issue summary: View changes
gausarts’s picture

Issue summary: View changes

Added recommendation to use external slick_views for the starters.

cdmo’s picture

Thanks for all of your work!

Just a couple notes from my experience. I upgraded from 7.x-2.0-beta1. I had the following enabled: slick, slick_fields, slick_views.

- I lost access to /admin/config/media/slick. I had to enable slick_ui and it came back.
- Despite the fact that my optionset is set to use arrows, arrows are no longer appearing in my carousel view (see attached screenshots)

I initially just updated by using `drush up`. But, I also tried deleting slick from my contrib modules folder and re-downloaded a fresh copy. That didn't make the arrows come back either. I have no pending db updates either.

Any idea why the arrow problem is occurring?

gausarts’s picture

Thanks for the report.

Hmm, strange, do you have a link so I can see it?
Or you can check the firebug, or the source, if slick__arrow nav is there? Please verify, so we can determine if it is JS or HTML issue.

You didn't say the following, hopefully you did, but if you didn't, please do so:
1. Re-generate JS if the aggregation is on.
2. Clear cache.

Please provide more info with the above.

gausarts’s picture

Another question:
3. Did you store optionsets in code prior to alpha release?

If so, please see the troubleshooting in the README.txt, or here for quick reference:

- Frontend type juggling is removed #2497945: Move type juggling to backend only:
- Please re-save and re-export optionsets if you are a pre-alpha user who stored optionsets in codes before alpha release on 2015-3-31, or precisely before 2015-3-2 commit:
http://cgit.drupalcode.org/slick/commit/?id=f08c3b4

- Please ignore if you:
o are a (pre-)alpha user who stored optionsets in codes after alpha.
o never stored/exported optionsets in codes.

gausarts’s picture

I just reproduced your error, the missing arrows issue, in my case was because I installed old slick, I forgot to re-check the actual old version. Once I updated the Slick to the latest one 1.5.5, the arrows appear. It is actually stated in the README.txt:

7.x-2.x supports Slick 1.5 above, and dropped supporting Slick 1.4.x and below.

The actual issue was the arrows are part of the slides due to Slick 1.4 breaking changes. More info here: #2418149: Slick 1.4 breaking changes
Please let me know if you have updated the Slick library as well?

cdmo’s picture

I've only updated on a dev instance, so I can't share it. The production instance is at peoplescontest.libraries.psu.edu.

So, oddly enough the slick__arrow nav is present. But it's got a display: none on it. Here's the html:

<nav class="slick__arrow" style="display: none;">
      <button type="button" data-role="none" class="slick-prev slick-nav" style="display: block;">Previous</button>            <button type="button" data-role="none" class="slick-next slick-nav" style="display: block;">Next</button>    </nav>

Running drush fc and looking at slick_optionset:default I can see that I don't have that exported in any feature module. And when I look at /admin/config/media/slick I only have "Default" which is "Overridden". I tried saving the optionset again, but that didn't change anything.

I'm not sure why it's adding display: none, does that provide a clue as to what's going on? Thanks again.

cdmo’s picture

Updating to the latest Slick.js worked, the arrows are back. Thanks!!

I'm curious though, I'm not familiar with the libraries API, but would there be a way to get Drupal to see that a new version of Slick.js needed to be downloaded? Or does this have to be a manual process?

Just looking around the code, I see slick.module has this line:

define('SLICK_VERSION', '1.x');

And I had 1.4.1.

Should it be the following instead? Would that take care of it?

define('SLICK_VERSION', '1.5.x');

gausarts’s picture

Thanks. Now I can see, your Slick 1.4.1 library is not supported.
Please update to Slick 1.5.5, and let me know. You wrote earlier ;)

gausarts’s picture

Glad it is resolved now ;)

Regarding 1.x, it was intentional to avoid chasing highly dynamic minor and patch releases, last time the update was quite frequent so I ended up with that 1.x versioning which is enough to stay for quite some time till 2.x ;)
Manual update is the only way, I am afraid.

However I put the relevant info at the project home page now based on your experience. Hopefully useful to others, too.

cdmo’s picture

Sounds good, thanks for fast responses.

gausarts’s picture

You are welcome ;) Happy things are sorted out.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.