Refactor and optimize code
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 25/100
Research direction
Start with the code and review discussion linked from pull request #41, since the issue does not identify files or tests. Separate the proposed refactors into an agreed scope, then run the existing project checks and confirm that the affected behavior remains covered after the changes.
Written by the indexing model from the issue text.
Description
@warrior-abhijit has suggested several changes to vcert-python code. We can address them together in one issue.
switch case will be better here ?
Originally posted by @warrior-abhijit in https://github.com/Venafi/vcert-python/pull/41#discussion_r488175192
address todo now ?? as these are lot of if, else in here
Originally posted by @warrior-abhijit in https://github.com/Venafi/vcert-python/pull/41#discussion_r488176457
regex match API would be lot better here and will remove lot of duplicate code below w.r.t regex match
Originally posted by @warrior-abhijit in https://github.com/Venafi/vcert-python/pull/41#discussion_r488177162
switch case may be here as well ?
Originally posted by @warrior-abhijit in https://github.com/Venafi/vcert-python/pull/41#discussion_r488177862
There is a handy Python wrapper called @property. This can be handy here. It would look like this:
@property
def base_url(self):
# This is a getter
return self._base_url
@base_url.setter
def base_url(self, value):
# This is the setter method
self._base_url = self._normalize_and_verify_base_url(value)
It's nicer for refactoring and is pretty explicit.
Originally posted by @HELGAHR in https://github.com/Venafi/vcert-python/pull/41#discussion_r492452816
How safe is it in this method to assume that these dictionary keys resolve? I'm new to this code, but I usually think thrice before trying to access a node in the dictionary without .get().
Originally posted by @HELGAHR in https://github.com/Venafi/vcert-python/pull/41#discussion_r493173154
Just a tidbit of input: Python string objects have a .startswith() method that's easier to read than a regex, although a regex works fine.
Originally posted by @HELGAHR in https://github.com/Venafi/vcert-python/pull/41#discussion_r493173571
No use in having a doc string if the parameters aren't described, IMO.
Originally posted by @HELGAHR in https://github.com/Venafi/vcert-python/pull/41#discussion_r493174068
- Dominant language
- Python
- Stars
- 22
- Forks
- 23
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 13
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from Venafi/vcert-python
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 28/100
Venafi/vcert-python#208 ·
-
bug
Difficulty 3/5 1-2 days Newbie friendliness 45/100
Venafi/vcert-python#133 · 3 comments ·
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 25/100
Venafi/vcert-python#114 ·
-
Venafi/vcert-python#91 · 1 assignee ·
All issues in Venafi/vcert-python
Similar issues
-
essnmx good first issue
Difficulty 1/5 Under an hour Newbie friendliness 95/100
-
[Feature] 奇物选择添加优先级 Open
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
syfoud/Simulated_Scepter#174 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
Giskard-AI/giskard-oss#2840 · 1 comment ·
-
A claim comment carrying the issue number is silently declined while the workflow reports success Openarea: repo bug perceived difficulty: 2
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
yeti-platform/yeti#1380 ·