twisted / twisted/twisted

FilePath.alwaysCreate should be removed

Open
#2,407 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

core enhancement new priority-normal
Dominant language
Python
Stars
6k
Forks
1.2k
Avg merge
2d 10h
Merged PRs (30d)
10

Description

jyknight's avatar @jyknight reported
Trac ID trac#2407
Type enhancement
Created 2007-01-17 06:14:09Z

It is a poor API, and should not have been added. The .create() method is a much better way to accomplish this. As far as I can tell, its only use is for temporarySibling. Another way to do that should be figured out (for example, a function which returns a file instance made with create(), and a FilePath object). And then, .temporarySibling(), .alwaysCreate, and .requireCreate() should be deprecated and later removed.

Searchable metadata
trac-id__2407 2407
type__enhancement enhancement
reporter__jknight jknight
priority__normal normal
milestone__ 
branch__ 
branch_author__ 
status__new new
resolution__None None
component__core core
keywords__ 
time__1169014449000000 1169014449000000
changetime__1240242707000000 1240242707000000
version__None None
owner__ 
cc__glyph

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing FilePath.alwaysCreate, .create(), temporarySibling(), and .requireCreate(), then inspect their current usages. Done requires agreeing on an alternative for temporarySibling and deprecating and later removing the identified API methods.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
backend
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.