Comments (5)
From a quick scan, it looks like the following functions are used from the _
module:
_.each
_.extend
_.clone
_.countBy
_.defaults
_.groupBy
_.pick
That's a fair bit of functionality that would need to be replicated by another module?
from pa11y.
not replicated by another module, but other modules. this is just my personal ocd, but smaller modules tend to perform better.
from pa11y.
Something to consider, if you have any suggestions for replacement modules @stephenmathieson? I'm not going to focus heavily on this kind of optimisation (if needed at all) until the adding of new features has settled down a bit – from past experience, trying to optimise while everything's changing under your feet is a painful task.
I'll pop this on the back-burner for now, and will revisit after the next release.
from pa11y.
this is definitely not a big deal, and certainly shouldn't block other more important changes from making their way into the codebase. i agree that if this sort of path is to be followed, it can wait.
regarding replacements:
_.each
=[].forEach
orfor (var prop in obj) fn(prop, obj[prop])
orObject.keys(obj).forEach
_.extend
=utils.extend
orfor (var prop in obj) new_obj[prop] = obj[prop]
_.clone
=[].slice.call
orutils.extend({}, obj)
or clone_.defaults
=_.extend
=utils.extend
= ...
for methods like _.pick
and _.groupBy
, i'd have to suggest a slight refactor (or at least a deeper examination as to why these methods are needed)
from pa11y.
Reading over this again, I might revisit the dependencies at some point but underscore is working fine for now. If I was to move away from underscore, it would be towards several small modules which replace the different functions being used. I wouldn't like to reimplement the functionality in this repo as it would increase the complexity and amount of code we'd have to test/maintain.
from pa11y.
Related Issues (20)
- Timeouts happening 100% of the time HOT 1
- Pa11y check passes locally, fails in Github Actions HOT 3
- Ignore rules per selector HOT 1
- [Feature] - Playwright support HOT 1
- timeout error for a single url HOT 1
- CircleCI run differs from expected output. JS not running before pa11y test. HOT 1
- Using gitlab ci environment variables to authenticate HOT 1
- Can we get violations defects for after login pages using pa11y? HOT 2
- TimeoutError: Pa11y timed out HOT 6
- Inconsistencies between pa11y and other accessibility tools HOT 1
- Axe runner doesn't include wcag2aaa tag when standard is set to WCAG2AAA. HOT 2
- How do I include multiple Urls in 1 report? HOT 7
- Can I include a config file for a report? HOT 2
- Error reporting during installation HOT 1
- rules option ignored HOT 1
- Documented require() for reporters doesn't work HOT 3
- Error: Could not find expected browser (chrome) locally. Run `npm install` to download the correct Chromium revision (869685) HOT 5
- Is pa11y still maintained? HOT 6
- Fails to run once `core-js` is removed from the page. HOT 3
- Retrieving the number of items that pass the checks per rule HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pa11y.