Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Move package util into jedis #1689

Merged
merged 1 commit into from
Feb 11, 2018
Merged

Move package util into jedis #1689

merged 1 commit into from
Feb 11, 2018

Conversation

sazzad16
Copy link
Collaborator

@sazzad16 sazzad16 commented Dec 4, 2017

In util package:

  • Some classes contain the name Jedis
  • Some classes are dependant on elements in package jedis (e.g. exceptions)

IMHO, both of these should be avoided. A simple solution for this is to move entire util into jedis.

Copy link
Contributor

@HeartSaVioR HeartSaVioR left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Nice improvements.

@HeartSaVioR
Copy link
Contributor

Since it is clear backward incompatibility, I'd like to have @marcosnils also taking a look.

@sazzad16
Copy link
Collaborator Author

@marcosnils ?

@sazzad16
Copy link
Collaborator Author

@marcosnils PING

@marcosnils
Copy link
Contributor

marcosnils commented Feb 11, 2018 via email

@sazzad16
Copy link
Collaborator Author

@marcosnils I just marked READY TO MERGE after waiting two months for your opinion :)
Wanted to make sure you don't oppose the idea.

@sazzad16 sazzad16 merged commit 85a31ba into redis:master Feb 11, 2018
@sazzad16
Copy link
Collaborator Author

Merged into master.

@gkorland
Copy link
Contributor

gkorland commented Nov 28, 2018

@sazzad16
i think we need to add "proxy" files on the original packages to prevent backward issues
It seems like iא's also effecting the spring-redis-data

You can see that they are using couple of util classes

https://github.com/spring-projects/spring-data-redis/search?q=%22redis.clients.util.%22&unscoped_q=%22redis.clients.util.%22

@gkorland
Copy link
Contributor

gkorland commented Nov 28, 2018

org.springframework.beans.factory.BeanCreationException: 
Error creating bean with name 'redisConnectionFactory' defined in class path resource [org/springframework/boot/autoconfigure/data/redis/JedisConnectionConfiguration.class]: 
Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: 
Failed to instantiate [org.springframework.data.redis.connection.jedis.JedisConnectionFactory]: 
Factory method 'redisConnectionFactory' threw exception; 
nested exception is java.lang.NoClassDefFoundError: **redis/clients/util/SafeEncoder**

@sazzad16
Copy link
Collaborator Author

@gkorland
As long as 2.x is being used, there shouldn't a problem. Besides, I can see spring-data-redis is officially using jedis-2.9.0. They'd also be able to use 2.10.x easily.

However, it requires only 7 changes in 6 files to make spring-data-redis be compatible with jedis-3.x. This should be a simple task. Isn't it? :)

joyang1 pushed a commit to joyang1/jedis that referenced this pull request Dec 27, 2018
In `util` package:

- Some classes contain the name `Jedis`
- Some classes are dependant on elements in package `jedis` (e.g. `exceptions`)

IMHO, both of these should be avoided. A simple solution for this is to move entire `util` into `jedis`.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants