apache / apache/cloudstack

scripts(shell): counts of misspelled words in the codebase

未关闭
#10,639 2 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
long-term-plan
主要语言
Java
星标
3.1k
派生
1.4k
平均合并
6 天 19 小时
30 天内合并 PR
32

描述

Currently on main branch I run a one line shell script to produce a list of potentially misspelled words which is sorted in descending order from most misspelled to least. We have both the misspelled word and how many times that word is misspelled in our codebase.

So with any spell checker they do sometimes pick up false positives and code terms that are not misspelled etc.

So I am using a newer version of `codespell` here on my local machine compared to what is currently running on main with pre-commit. So our list of misspelled words at 560 lines is slightly more than what is currently on main branch in https://github.com/apache/cloudstack/blob/main/.github/linters/codespell.txt with 526 lines.

There is a PR up for fixing `51 valiate` here #10536
There is another PR still in progress that was upgrading the `codespell` version for pre-commit. It now has conflicts. #10144

So to recreate this list you can run from this repo root:

`codespell --skip='./ui' | cut -f2 -d' ' | tr A-Z a-z | sort | uniq -c | sort -nr`

You can install a local copy of codespell with pip: https://github.com/codespell-project/codespell

We run codespell with pre-commit and that is all self contained you don't need to install a local copy of codespell to run it with pre-commit. This local script is just extra tooling.

560 lines seen below:

```
302 ans
242 attache
168 mor
90 ccompiler
68 assertin
61 nin
51 valiate
38 testng
35 atleast
21 parms
17 fo
16 te
12 notin
11 policys
11 incase
11 implementor
10 ther
10 reserverd
10 reserv
10 connexion
9 usera
9 onlyonce
9 equivalant
8 retrive
8 remore
8 excetion
8 cant
7 stickyness
7 re-use
7 reqiured
7 ramdom
7 overriden
7 ist
7 everytime
6 uptodate
6 tempdate
6 retreive
6 pararmeter
6 execption
6 erro
6 eles
6 cna
6 chunck
6 attches
6 addin
5 strat
5 resposne
5 propertie
5 parralels
5 noone
5 initator
5 deply
5 complaince
5 appropritate
4 wil
4 successfull
4 specifed
4 recevied
4 ofthe
4 implementors
4 implememented
4 hte
4 fowarding
4 explicitely
4 doesnot
4 dockin
4 declatory
4 crated
4 crate
4 craeted
4 couldnt
4 checkin
4 capcity
4 capabilites
4 bais
4 aquire
3 wth
3 wont
3 visable
3 verfying
3 unsupport
3 unkown
3 ths
3 thorugh
3 sufix
3 splitted
3 responser
3 reponse
3 readd
3 physcial
3 nd
3 modifers
3 lable
3 intereface
3 instace
3 faield
3 exects
3 execept
3 dissapper
3 direcotry
3 differnt
3 dettached
3 dettach
3 dependend
3 definiton
3 coudl
3 contro
3 contex
3 constrait
3 comparision
3 childs
3 becasue
3 authenitication
3 aquiring
3 aqcuire
3 ammount
3 adminstrator
3 actuall
2 wit
2 wakup
2 verfy
2 varius
2 usign
2 unrecoginized
2 unpluging
2 unexpect
2 uneccessarily
2 unabled
2 ues
2 ue
2 trough
2 tring
2 thirdparty
2 thi
2 syste
2 storeage
2 stil
2 spped
2 singature
2 simplier
2 similary
2 seting
2 ser
2 seprated
2 sepcified
2 seconday
2 scrip
2 scalled
2 sate
2 runing
2 retrived
2 resorce
2 requried
2 renabling
2 proxys
2 primay
2 prefered
2 preceeding
2 perfromed
2 offfering
2 occured
2 numer
2 nowe
2 nome
2 multple
2 mot
2 minumum
2 metatdata
2 maintenace
2 maintainence
2 intialize
2 intefaces
2 inspite
2 includeing
2 impossibile
2 implmeneted
2 hda
2 havin
2 hasnt
2 handeling
2 guarenteed
2 fro
2 frist
2 findout
2 falied
2 failes
2 expcted
2 exisitng
2 ect
2 doubleclick
2 disover
2 deserialzed
2 deployement
2 defered
2 defaut
2 createing
2 controles
2 controler
2 containg
2 configuable
2 concious
2 clinet
2 cliente
2 clenup
2 chaing
2 callin
2 bu
2 becase
2 authenitcation
2 assoication
2 apllication
2 anull
2 analagous
2 alocation
2 ags
2 afterall
2 addreess
1 womens
1 virutal
1 verifing
1 varibles
1 valus
1 valule
1 vaidate
1 vaguaries
1 utlization
1 usin
1 unxpected
1 unparseable
1 unneccessary
1 unkonw
1 unexepected
1 uncompressible
1 uncommited
1 unavailibility
1 tyoe
1 tru
1 transction
1 tipically
1 throught
1 thigns
1 theses
1 theres
1 therefor
1 thats
1 tha
1 tage
1 syncronous
1 suppport
1 suppots
1 suiteable
1 sucessfully
1 suces
1 suceessful
1 succesfull
1 substitions
1 strutural
1 streched
1 stip
1 statics
1 standy
1 specifiy
1 specied
1 softare
1 snpashot
1 snapshoting
1 snapshoted
1 skiping
1 signle
1 sie
1 shoule
1 shoul
1 sevices
1 settig
1 servies
1 sepcify
1 seesion
1 seconadry
1 scirpt
1 runnign
1 roperty
1 rocessor
1 rever
1 returing
1 retuned
1 retrun
1 retriving
1 retreiving
1 resturns
1 respones
1 reseting
1 reseted
1 reqest
1 remvoing
1 remaning
1 relese
1 releease
1 refference
1 redunant
1 recursivelly
1 recieved
1 reccuring
1 readabilty
1 raison
1 pyhsical
1 psudo
1 provison
1 propogate
1 propertys
1 properites
1 propegate
1 progres
1 programatically
1 procuct
1 priviledged
1 previleges
1 preffered
1 precense
1 potenial
1 possiblity
1 poluting
1 polcies
1 pluggin
1 plugable
1 permissble
1 passowrd
1 particualr
1 parametrs
1 paramete
1 paramenter
1 paramemeter
1 paramater
1 overwritting
1 outter
1 ources
1 otherwse
1 orginal
1 optin
1 opeation
1 onother
1 omited
1 occuring
1 occurence
1 numbe
1 nodel
1 netowrk
1 necesary
1 neccessary
1 nast
1 mutliple
1 multipl
1 mulitply
1 mis
1 milisecond
1 messge
1 mesage
1 mergable
1 mehtod
1 maxium
1 maschine
1 manaully
1 mambers
1 mamagement
1 maintenence
1 lokales
1 lokal
1 listner
1 linke
1 limite
1 lief
1 leve
1 klunky
1 isnt
1 invokation
1 invlaid
1 intializing
1 intializes
1 interpretted
1 internt
1 interfer
1 interable
1 intepret
1 instnace
1 instal
1 initilization
1 initalize
1 inital
1 ingore
1 infrastrcuture
1 informaton
1 informations
1 infor
1 indien
1 indecates
1 implmentation
1 implict
1 implemnt
1 immediatley
1 igoring
1 identifyers
1 identifyer
1 identifers
1 hsould
1 hould
1 hostanme
1 hasing
1 happend
1 hanling
1 gradiant
1 gracefull
1 gorry
1 gloabal
1 get's
1 gernerate
1 generallly
1 genarate
1 funcition
1 fuctionality
1 frontent
1 folowing
1 fle
1 fisrt
1 fillled
1 filenname
1 feild
1 fasion
1 fals
1 faild
1 expection
1 exitting
1 existsing
1 exisits
1 exeeded
1 executeable
1 execut
1 excute
1 excption
1 erronous
1 environmnet
1 enviornment
1 entires
1 enmpty
1 enebled
1 encryted
1 enble
1 emmited
1 elments
1 elemnt
1 eanbled
1 dows
1 dont'
1 doesnt
1 doesn'
1 divice
1 dissassociated
1 discrepency
1 disbale
1 directroy
1 differnet
1 didnt
1 dictonary
1 diasbled
1 diabling
1 dettaching
1 detroying
1 detroy
1 detination
1 desination
1 descrption
1 dervied
1 deplying
1 dependant
1 dependancy
1 deleteable
1 defalut
1 decypher
1 decocdes
1 decalared
1 datas
1 dahsboard
1 currentl
1 curren
1 crresponding
1 cros
1 credentail
1 createa
1 craete
1 cosole
1 correspoonds
1 correspoding
1 correcponding
1 coputer
1 convinience
1 convienient
1 controll
1 continuesly
1 constraits
1 conneciton
1 configruation
1 confg
1 conectix
1 complient
1 comparisions
1 commited
1 comman
1 collison
1 cluser
1 chould
1 choosen
1 checkd
1 cavaet
1 carrefully
1 capablity
1 buildin
1 bootup
1 bootstraper
1 boardcast
1 bject
1 birdge
1 behviour
1 becaues
1 beacuse
1 beacause
1 avialable
1 availiability
1 authroize
1 authenciation
1 attrbutes
1 attch
1 atomation
1 atmost
1 asyncronous
1 asynchroniously
1 asssert
1 assosiate
1 assigne
1 assiciate
1 aqcuired
1 apporpriate
1 applicatio
1 aplication
1 apche
1 ammended
1 alue
1 alpha-numeric
1 alogrithm
1 allocted
1 allo
1 algoritm
1 algin
1 aktive
1 againt
1 afrer
1 afer
1 addtion
1 acumulate
1 acuiring
1 acount
1 acheived
1 accouns
```

贡献指南

打开贡献指南

调研方向

首先,从 repository 根目录运行所述的 codespell pipeline,并将其输出与 .github/linters/codespell.txt 和 pre-commit 配置进行比较。在决定预期要进行什么更改之前,先查看 #10536 和 #10144 的上下文;由于 issue 没有指出目标文件或所请求的实现,因此未定义 done。

由索引模型根据 Issue 内容生成。

评估

技术栈
shell
领域
tooling
Issue 类型
功能
难度
3/5
预计耗时
1-2 天
活跃度
停滞
描述清晰度
需要澄清
新手友好度
30/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。