Git Product home page Git Product logo

recap-chrome's Introduction

What is this?

This is the code for the RECAP Chrome, Firefox, and Safari extensions, programs that are used to liberate millions of documents from the PACER system. To install this extension please visit its homepage at https://free.law/recap/.

Reporting Issues

Issues go one of a few places:

Joining as a Developer

If you wish to contribute to our efforts to drain PACER, please get in touch using the contact form on Free Law Project's website or simply get to work on an issue that interests you. It's usually better to get in touch before you begin work though.

Code Standards

  1. We have an eslint configuration (.eslintrc.js). Please try to ensure that new commits conform to it, but many existing files unfortunately do not. There are probably plugins for your editor to help you with this.

  2. For commits, please adhere to the guidance published here. Intellij has a plugin to help with this. Look for "Git Commit Template".

Tips for Making Extensions

  1. The weirdest thing about working on extensions is that you need to have two developer tool windows open simultaneously. One for the page you're on and how the extension interacts with it, and the other for the background page of the extension. You'll just have to live like this. Having multiple monitors helps. Read on for how to set this up.

  2. You can load an "unpacked extension" from chrome://extensions/ if you enable developer options in Chrome. The same can be accomplished in Firefox by going to about:debugging, clicking "Load Temporary Add-on" and then selecting any file.

    Once you have the unpacked extension loaded, you'll see a button to debug it. Click that to open the second developer tools window mentioned just above.

  3. While it's true that every court has their own customized version of PACER, there is a PACER training site that does not charge fees. You can use this if you wish to work on the system without accruing charges. If you are accruing charges while working on this extension, Free Law Project may be able to help. Let us know.

  4. If you want to auto-zip your code on changes, you have two options. First, you can install a utility called entr and run:

     command ls *.js | entr zip -FSr recap-chrome.zip * --exclude=*node_modules*
    

    Alternatively, for Firefox, you can use the web-ext tool, with a command like:

     web-ext run --firefox-profile recap-debugging --start-url https://ecf.dcd.uscourts.gov/cgi-bin/DktRpt.pl?178502 --start-url https://www.courtlistener.com/docket/4214664/national-veterans-legal-services-program-v-united-states/
    

    To run that you'll need a recap-debugging profile first, but running that will set up auto-reload of the extension in Firefox. It will also load a couple useful URLs in your debugging window.

Running Tests

You can (and should) run the tests before you push. If you don't, you'll be disappointed when our continuous integration suite yells at you. To run tests, install the dependencies described in package.json by running:

npm install

You will need Chrome installed. Then run:

karma start --single-run

If the tests pass, give a push to your repo and send us a pull request.

When we pull your code using Github, these tests will be automatically run by GitHub Actions. You can make sure that your pull request is good to go by waiting for the automated tests to complete.

For more information on testing see TESTING.md.

The current status of our master branch is:

Build Status

Releasing a New Version

When a new version is needed, the release process is:

  1. Do the manual QA tests

  2. Update package.json and manifest.json with a new release version.

  3. Run web-ext lint to ensure no regressions.

  4. Update CHANGES.md

  5. Commit the code.

  6. Tag the code with something like:

     git tag -s '0.8.4' -m "Releases 0.8.4, fixing replaceState and pushState to work in Chrome 43." -u '[email protected]' -f
     git push --tags -f
    
  7. Make sure you don't have any working/testing code in your tree that could get zipped up in the next step.

  8. Zip up the archive with the rather archaic:

     cd src && zip -FSr recap.zip *
    
  9. Make a new release on Github announcing the release that includes the .zip file.

  10. Upload that to the Chrome Market.

  11. Upload that to addons.mozilla.org

Copyright

RECAP for Chrome Copyright 2013 Ka-Ping Yee [email protected]

RECAP for Chrome is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. RECAP for Chrome is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with RECAP for Chrome. If not, see: http://www.gnu.org/licenses/

recap-chrome's People

Contributors

albertisfu avatar arcataroger avatar ardislu avatar audiodude avatar dependabot-preview[bot] avatar dependabot[bot] avatar erosendo avatar flooie avatar harlanyu avatar imgbotapp avatar johnhawkinson avatar jraller avatar knowtheory avatar litewarp avatar lkj19zpdidde avatar mlissner avatar ttys0dev avatar zestyping avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

recap-chrome's Issues

Donate link opens two tabs from options page

This is an odd one that's happening in the unreleased code. If you open the options that live at:

chrome://extensions/?options=eglikknbikacpcgmjdgfoimjjbemdbnj

And if you click the Donate button, it opens two tabs. If you open the options by clicking the RECAP icon and then click the Donate button, it only opens one.

Generated filesnames from district courts contain "null"

When viewing PDF files from the AZ district court, the generated PDF filename contains "null" instead of a valid case number.

Steps to reproduce:

  1. Visit: https://ecf.azd.uscourts.gov/doc1/02502127266
  2. Click on "View Document".

Actual results:
Once the PDF file is displayed in Chrome, the blue buttons generated by RECAP in the upper-left read:

  • Save as gov.uscourts.azd.null.null.0.pdf
  • Save as D.Airz._null_null_0.pdf

Expected results:
An actual case ID should be used in the filename instead of "null".

User-agent:
Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.153 Safari/537.36

Notifications not appearing on Login or file upload

Popup notifications do not appear when on login, file upload or docket update.
However:
The icon does turn blue
Files are uploading
Dockets do update (most of the time).

Additionally there is no notice when I go to purchase a document that has already been recapped.

I did some recapping with the dev tools enabled this evening.

Below is what it looks like after I "recap" a document.
recap calls

For the sake of thoroughness I found part of a docket (https://ecf.ilnd.uscourts.gov/cgi-bin/iqquerymenu.pl?284511) that hadn't been recapped and uploaded that.

plvi docket

This is what it looks like when a document menu (multiple documents in one upload) is recapped
recap calls plvi doc 5

And this is what it looks like when an unrecapped exhibit gets recapped
plvi docket 5a

And this is what it looks like when its parent gets recapped.
plvi 5

I hope this helps.

NO ISSUES FILED HERE.

This issue is just a placeholder.

All RECAP-related issues should be filed at:

https://github.com/freelawproject/recap/issues/new/

Sorry for the confusion. The backstory is that we want all of our RECAP issues under the same roof, not spread around to the Firefox or Chrome or other repository.

(This was a bigger issue before Firefox adopted Chrome's extension model, but we're still stuck with it really.)

Can't tell if files are being uploaded to RECAP

The RECAP feature list has this description of the automatic upload feature:

"You will see a small notification box after each upload, which you can turn off if you wish."

However, when I'm viewing PDF files on PACER, I don't see any notification that an upload is taking place.

500 Server error on load

When the extension loads, it requests query/ with the following payload:

json=%7B%22court%22%3A%22azd%22%2C%22urls%22%3A%5B%22https%3A%2F%2Fecf.azd.uscourts.gov%2Fdoc1%2F02502773084%3F%22%5D%7D

This results in a 500 error:

Oops! This is a 500 error. How did this happen? Tell us what you did at [email protected]. Thanks!

Extension doesn't work on the Training site

In Chrome, I think we use cookies to test if RECAP should be enabled or not, and on the training site:

https://dcecf.psc.uscourts.gov/cgi-bin/login.pl

It appears that the cookies are different or something else isn't working like it should. This makes development more expensive, since you have to use the real sites.

If we have to write custom code to handle this, we might also want to use a special icon when we're on this site so that our devs get a nice easter egg. Might be overkill though, if it's not easy....

RECAP reported as failing on Chrome 44

As reported on uservoice:

RECAP is throwing a javascript error which makes it impossible to view paid documents. This is with Chrome 44.0.2358.0 canary (64-bit) on MacOS 10.10.2 (Yosemite), i.e. latest stuff. RECAP recently stopped working and no changes to my Chrome environment other than auto updates from Google.

If I click on a docket entry for a paid view of the document, I get the "Transaction Receipt" screen advising of the charges. If I then click "View Document", the document is not downloaded. Instead, the console log shows the javascript error:

content.js:183 Uncaught TypeError: Failed to execute 'replaceState' on 'History': 2 arguments required, but only 1 present.

Sounds like a bad one and likely a valid issue. I'll investigate as soon as possible.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.