Thanks for mentioning. I’m adding a README.md to the scripts folder soon. It 
will mention this prerequisite:

pip3 install -r requirements.txt

In the requirements file we’ll also gather dependencies for other scripts in 
the folder.

Jan Høydahl

> 14. jun. 2019 kl. 22:26 skrev Cassandra Targett <[email protected]>:
> 
> Nice script Jan, thanks.
> 
> Just a note for others who may have a less than complete python setup 
> already, I needed to install pygithub and jira modules to get it to run:
> 
> pip install pygithub
> pip install jira
> 
> Cassandra
>> On Jun 14, 2019, 7:11 AM -0500, Jan Høydahl <[email protected]>, wrote:
>> I closed PR #165, #146, #444, #711 and #651
>> 
>> I checked in the python script so you may try to run it for yourself
>> 
>> --
>> Jan Høydahl, search solution architect
>> Cominvent AS - www.cominvent.com
>> 
>>> 14. jun. 2019 kl. 13:20 skrev Jan Høydahl <[email protected]>:
>>> 
>>> I wrote a script to find PRs without JIRA in title and to find PRs where 
>>> corresponding JIRA is closed. The output is below.
>>> I could also extend the tool with options to also add a comment to the PRs 
>>> lacking issue in title, and to close the PRs where JIRA is resolved :)
>>> 
>>> 
>>> usage: githubPRs.py [-h] [--json] [--token TOKEN]
>>> 
>>> Find open Pull Requests that need attention
>>> 
>>> optional arguments:
>>>   -h, --help     show this help message and exit
>>>   --json         Output as json
>>>   --token TOKEN  Github access token in case you query too often anonymously
>>> 
>>> 
>>> 
>>> Lucene/Solr Github PR report
>>> ============================
>>> Number of open Pull Requests: 203
>>> Processing...
>>> 
>>> PRs lacking JIRA reference in title
>>>   #717: Code cleanup - Avoid using stream filter count where possible
>>>   #711: Solr 12013
>>>   #673: Replace instances of Math.random with Random.nextDouble
>>>   #669: Facet2d
>>>   #639: Solve the problem of highlighting Chinese inaccurately.
>>>   #622: Update Tessellator logic to label if triangle edges belongs to the 
>>> original polygon.
>>>   #615: Intervals Query Parser
>>>   #602: docu change: use class TopDocs instead of Hits
>>>   #601: Adding reader settings for moving fst offheap
>>>   #596: Under this branch, the dataDimensionCount is definitely not zero.
>>>   #595: Load freqs lazily in Postings
>>>   #564: prorated early termination
>>>   #542: LuceneLevenshteinDistance computes distance values outside of 
>>> interval [0, 1]
>>>   #508: Simplified JAVA_VER_NUM to utilize single expr execution
>>>   #507: Update jira/gradle to the latest master
>>>   #492: Answer to TODO: Replace Manual Encoding with JSON Module
>>>   #491: Update for multiple term's suggestion scoring
>>>   #484: solr 7.5 suggest The recommended result is empty
>>>   #478: Query Source Tracker custom component
>>>   #450: Add rule exception for "imento" and "mento" suffix
>>>   #442: Fixing an edge case bug when overriding a default 
>>> PostingsSolrHighligher
>>>   #415: Solr 12458
>>>   #405: don't die when java prints tool options
>>>   #404: Comment to explain how to use URLClassifyProcessorFactory
>>>   #399: fix explicit type declaration
>>>   #393: Lucene 8347
>>>   #388: Update package-info.java
>>>   #387: Solr-12421
>>>   #383: In ContextQuery, use a more comprehensive check for an empty prefix 
>>> automaton.
>>>   #379: add ë, ö and ï to norm()
>>>   #350: SOLR match mode change for the rouding off instead of taking floor
>>>   #340: Add SolrConfig to SolrRequestParsers constructor in 
>>> EmbeddedSolrServer
>>>   #309: Update ZkConfigManager.java
>>>   #308: Add a suggester that operates on tokenized values from a field
>>>   #293: spellcheck prefix already contains a trailing dot
>>>   #292: Removed extra whitespace
>>>   #272: Correct inconsistency on plugin support
>>>   #242: a little error about TopDocs
>>>   #241: SpanishLightStemmer fix for plural words like casas
>>>   #234: Made minor changes to docstring to fix wording errors
>>>   #231: WordDelimiterGraphFilter: Better support for camel case splitting.
>>>   #219: TieredMergePolicy.findMerges improvements
>>>   #218: feat: Separate SuggestModes for WordBreak and WordJoin
>>>   #217: added initial .travis.yml
>>>   #201: Allocate ArrayList with exact size
>>>   #175: Skipping merger
>>>   #153: Fix issues reported by findbugs
>>>   #152: Added log prior calculations in CachingNaiveBayesClassifier.
>>>   #133: Prevent memory leaks in PerFieldAnalyzerWrapper
>>>   #131: Fix peer sync replcation test check
>>>   #124: fix small issue in solr shell script
>>>   #116: fixed NPEs
>>>   #110: Update SearchFiles.java
>>>   #108: Minor - Fix error message
>>>   #85: Allow updating configs like port # on forced upgrade
>>>   #48: moved common string to constant file
>>>   #22: Update files.js
>>>   #8: Do not log error messages, if client has been interrupted
>>> 
>>> Open PRs with a resolved JIRA
>>> Processing...
>>>   #643: SOLR-13391 status=Resolved, resolution=Resolved, 
>>> resolutiondate=2019-04-12T14:09:27.000+0000 (SOLR-13391: Add variance and 
>>> standard deviation stream evaluators)
>>>   #444: SOLR-12708 status=Closed, resolution=Fixed, 
>>> resolutiondate=2019-03-19T03:46:31.000+0000 (SOLR-12708: Aggregate failures 
>>> from downstream async jobs; add error …)
>>>   #368: SOLR-12304 status=Resolved, resolution=Fixed, 
>>> resolutiondate=2019-05-17T03:15:01.000+0000 ([SOLR-12304] More Like This 
>>> component interesting term fix +tests)
>>>   #365: SOLR-12243 status=Closed, resolution=Fixed, 
>>> resolutiondate=2018-11-05T17:20:27.000+0000 ([SOLR-12243] span query 
>>> generalization + query parser tests)
>>>   #161: SOLR-9399 status=Closed, resolution=Fixed, 
>>> resolutiondate=2018-04-02T16:31:06.000+0000 (Fix SOLR-9399, pass basic auth 
>>> to update request)
>>>   #93: SOLR-8754 status=Resolved, resolution=Fixed, 
>>> resolutiondate=2019-06-13T10:59:41.000+0000 (SOLR-8754: Adding test cases 
>>> and additional error checking)
>>>   #651: LUCENE-8774 status=Closed, resolution=Duplicate, 
>>> resolutiondate=2019-04-28T20:00:27.000+0000 (LUCENE-8774: Performance 
>>> improvement for update?optimize=true)
>>>   #648: LUCENE-8766 status=Resolved, resolution=Fixed, 
>>> resolutiondate=2019-06-13T09:19:12.000+0000 (LUCENE-8766: Add Luwak as a 
>>> lucene module)
>>>   #631: LUCENE-8750 status=Resolved, resolution=Fixed, 
>>> resolutiondate=2019-04-03T09:19:47.000+0000 (LUCENE-8750: implement 
>>> setMissingValue for ValueSource sortFields)
>>>   #536: LUCENE-8643 status=Resolved, resolution=Fixed, 
>>> resolutiondate=2019-01-17T09:12:09.000+0000 (LUCENE-8643: Decrease test 
>>> complexity in the default case. Exclude simple text codec.)
>>>   #538: LUCENE-8640 status=Closed, resolution=Fixed, 
>>> resolutiondate=2019-01-28T19:30:32.000+0000 (LUCENE-8640: added changes for 
>>> the validation of valid dateString)
>>>   #533: LUCENE-8636 status=Resolved, resolution=Fixed, 
>>> resolutiondate=2019-01-15T11:02:49.000+0000 (LUCENE-8636: TestPointQueries 
>>> and long execution times)
>>>   #543: LUCENE-8474 status=Resolved, resolution=Fixed, 
>>> resolutiondate=2019-01-28T12:50:00.000+0000 (LUCENE-8474: final cleanups 
>>> and removal of RAMDirectory)
>>>   #432: LUCENE-8438 status=Resolved, resolution=Fixed, 
>>> resolutiondate=2019-01-28T12:52:44.000+0000 (LUCENE-8438: RAMDirectory 
>>> speed improvements and cleanup)
>>>   #146: LUCENE-7633 status=Closed, resolution=Won't Fix, 
>>> resolutiondate=2017-02-01T10:27:53.000+0000 (Rename Terms to IndexedField 
>>> and some related renamings, LUCENE-7633)
>>>   #141: LUCENE-7624 status=Closed, resolution=Fixed, 
>>> resolutiondate=2017-01-09T15:34:25.000+0000 (Minor corrections, see also 
>>> LUCENE-7624)
>>>   #165: LUCENE-7615 status=Resolved, resolution=Won't Fix, 
>>> resolutiondate=2018-04-02T19:38:51.000+0000 (LUCENE-7615 of 8 March 2017.)
>>>   #389: LUCENE-6687 status=Resolved, resolution=Fixed, 
>>> resolutiondate=2019-05-10T10:25:58.000+0000 ([LUCENE-6687] not necessary 
>>> nested for loop removed for terms retriev…)
>>>   #582: LUCENE-582 status=Closed, resolution=Fixed, 
>>> resolutiondate=2008-11-13T00:04:45.000+0000 (LUCENE-582: change heap array 
>>> init index to 1)
>>> 
>>> --
>>> Jan Høydahl, search solution architect
>>> Cominvent AS - www.cominvent.com
>>> 
>>>> 13. jun. 2019 kl. 22:56 skrev Cassandra Targett <[email protected]>:
>>>> 
>>>> I committed the pull request template a bit ago. Let’s see if it helps.
>>>> 
>>>> I can help do some cleanup of existing open PRs, maybe tomorrow afternoon 
>>>> my time. It’s worth checking while we’re at it for PRs that are still open 
>>>> even though the Jira is resolved/closed.
>>>> 
>>>> Cassandra
>>>>> On Jun 13, 2019, 6:08 AM -0500, Jan Høydahl <[email protected]>, 
>>>>> wrote:
>>>>> Once we get C in place (Github PR template), this will hopefully fix 
>>>>> itself.
>>>>> So I propose to try PR template as a first measure and then revisit if 
>>>>> that is not enough.
>>>>> 
>>>>> Still left to do is to triage the existing open PRs and link them. Who 
>>>>> wants to help? 
>>>>> 
>>>>>   
>>>>> https://github.com/apache/lucene-solr/pulls?utf8=✓&q=is%3Apr+is%3Aopen+NOT+LUCENE+in%3Atitle+AND+NOT+SOLR+in%3Atitle+
>>>>>  
>>>>> 
>>>>> We should probably also look for PRs with a LUCENE/SOLR jira attached, 
>>>>> where the fix is merged without auto-closing PR, and then close those.
>>>>> 
>>>>> TIP: When you merge code outside of github, add the text "fixes #123" to 
>>>>> the commit message to automatically close PR#123.
>>>>> 
>>>>> --
>>>>> Jan Høydahl, search solution architect
>>>>> Cominvent AS - www.cominvent.com
>>>>> 
>>>>>> 10. jun. 2019 kl. 15:05 skrev Gus Heck <[email protected]>:
>>>>>> 
>>>>>> Or the committer can create it if the issue is truly trivial... Also, 
>>>>>> one of the things that folks who contribute may gain is learning about 
>>>>>> development process. That aspect was extremely helpful to me when I made 
>>>>>> my first contributions to Ant many years ago. Not everyone who 
>>>>>> contributes is an expert.
>>>>>> 
>>>>>> On Mon, Jun 10, 2019 at 3:33 AM Varun Thacker <[email protected]> wrote:
>>>>>> I think D is important for making the barrier low for new contributors 
>>>>>> to get started.
>>>>>> 
>>>>>> It won't be great as we'll have two places to look a CHANGES entry 
>>>>>> against but I'll be okay with that.
>>>>>> 
>>>>>> Today a new contributor creates a PR and a committer can even merge the 
>>>>>> PR from the github interface. But in between those 2 steps we have to 
>>>>>> tell the contributor to go create a placeholder Jira.
>>>>>> 
>>>>>> Imagine if this new contributor just wants to fix one typo from the ref 
>>>>>> guide. The overhead involved will shun quite a lot of folks?
>>>>>> 
>>>>>> On Sat, Jun 8, 2019 at 2:22 PM Jan Høydahl <[email protected]> wrote:
>>>>>> Jira has become very heavy-weight over the years and I'm not sure we 
>>>>>> need all those features.
>>>>>> I think Github issues are a bit too lightweight perhaps, so I'm not 
>>>>>> actively promoting option E, just lifting it up as a real alternative.
>>>>>> 
>>>>>>> As an example how would you implement the security issue visibility 
>>>>>>> with original poster and PMC able to see it in github?
>>>>>> 
>>>>>> Think they have something in the makings for this, see 
>>>>>> https://github.com/apache/lucene-solr/security/policy 
>>>>>> Have no idea if you can limit the group who sees them to PMC members 
>>>>>> though.
>>>>>> 
>>>>>> --
>>>>>> Jan Høydahl, search solution architect
>>>>>> Cominvent AS - www.cominvent.com
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> --
>>>>>> http://www.needhamsoftware.com (work)
>>>>>> http://www.the111shift.com (play)
>>>>> 
>>> 
>> 

Reply via email to