File tree Expand file tree Collapse file tree 3 files changed +39
-0
lines changed Expand file tree Collapse file tree 3 files changed +39
-0
lines changed Original file line number Diff line number Diff line change @@ -24,6 +24,9 @@ class Parameters:
2424    wpilib_bin_version : str 
2525    wpilib_bin_url : str 
2626
27+     #: renames [project.entry-points.KEY*] to [project.entry-points.VALUE] 
28+     entrypoints : T .Dict [str , str ]
29+ 
2730    exclude_artifacts : T .Set [str ]
2831
2932    requirements : T .Dict [str , str ]
Original file line number Diff line number Diff line change @@ -68,6 +68,30 @@ def wpilib_bin_version(self) -> str:
6868    def  wpilib_bin_url (self ) ->  str :
6969        return  self .cfg .params .wpilib_bin_url 
7070
71+     def  _update_entrypoints (
72+         self ,
73+         info : ProjectInfo ,
74+         pypi_name : str ,
75+     ):
76+         data  =  info .data 
77+         eps  =  data ["project" ].get ("entry-points" )
78+         if  eps  is  None :
79+             return 
80+ 
81+         for  name  in  list (eps .keys ()):
82+             for  prefix , replace  in  self .cfg .params .entrypoints .items ():
83+                 if  name .startswith (prefix ):
84+                     eps [replace ] =  eps [name ]
85+                     del  eps [name ]
86+                     print (
87+                         f"* { pypi_name }  : entry-points.{ name }   -> entry-points.{ replace }  " 
88+                     )
89+                     self .commit_changes .add (
90+                         f"{ pypi_name }  : entry-points.{ name }   -> entry-points.{ replace }  " 
91+                     )
92+                     info .changed  =  True 
93+                     break 
94+ 
7195    def  _update_requirements (
7296        self ,
7397        info : ProjectInfo ,
@@ -126,6 +150,12 @@ def update_requirements(self):
126150                data ["project" ]["dependencies" ],
127151            )
128152
153+             # project.entry-points 
154+             self ._update_entrypoints (
155+                 info ,
156+                 pypi_name ,
157+             )
158+ 
129159    def  _update_maven (self , info : ProjectInfo ):
130160        data  =  info .data 
131161        iter  =  (
Original file line number Diff line number Diff line change @@ -33,6 +33,12 @@ exclude_artifacts = [
3333
3434robot_wheel_platform  = " linux-roborio" 
3535
36+ [params .entrypoints ]
37+ #  prefix = "actual"
38+ #  - ensures that [project.entry-points.prefix*] are renamed to "actual", which
39+ #    makes it easy to upgrade them each year (https://github.com/robotpy/robotpy-cli/issues/5)
40+ #  - also reminds me that we have to bump it every year ^_^
41+ 
3642[params .requirements ]
3743semiwrap  = " ~=0.1.7" 
3844hatch-meson  = " ~=0.1.0b2" 
    
 
   
 
     
   
   
          
     
  
    
     
 
    
      
     
 
     
    You can’t perform that action at this time.
  
 
    
  
     
    
      
        
     
 
       
      
     
   
 
    
    
  
 
  
 
     
    
0 commit comments