Comments (6)
@mefellows I'm looking into this one and thinking of adding something in the pact-util file that checks for paths/urls and then normalizes/resolves them if they're valid.
Currently though, we're a bit "laissez-faire" with the path validation as we do some minute checks on it, but nothing too concrete. I do agree that we need to have the ability to check relative vs absolute paths, however, should we also accept path shortcuts like ~/
?
Also, when it comes to URLs, should we accept any protocols, or is it locked down to http(s)?
Trying to figure out the best way to do this as to implement it properly.
from pact-js-core.
The paths need to be relative to the directory you run the executable from - that might have been the issue. So you need to invoke the verifier using the relative path from the project root if possible.
Btw, there's an issue to change the paths from options to space separated arguments, so we don't have to do the comma separating thing.
from pact-js-core.
I don't see why other protocols could not be supported in the long term, i'm not sure what is currently supported beyond file://
and http://
.
However I think we don't allow unix/bash/whatever-specific shortcuts like ~
. I can't think of a situation where it's going to be terrible, but I can see implementation complexity with little value.
WRT other protocols, all that we need is the URL to be resolvable from the local host, and the Pact verifier to support it.
cc: @bethesque who also has some good knowledge around the verifier and might be able to assist.
from pact-js-core.
Why not just pass the paths in? The verifier should show an appropriate message. If it doesn't, let's change it to do it. No point duplicating code. The verifier can handle relative paths too, what's the problem you've found?
from pact-js-core.
Yeah from memory that was the problem, but I'm sure we can find a way to resolve it.
from pact-js-core.
Fixed in 6.15.0.
from pact-js-core.
Related Issues (20)
- Dependency Bug - @types/pino breaking typescript in consumers HOT 7
- pact.publishPacts(opts) missing HOT 4
- TypeError: Cannot read property 'forEach' of undefined HOT 8
- devDependency: @types/pino-pretty needed
- Binary Content Matching is odd - cross platform/arch HOT 9
- release snags - release note formatting and marking as latest
- Azure Pipeline: [email protected]: Failed to initialise native module for linux-x64 HOT 6
- Release Enhancement - update to use release-please
- The issue is we are not able to download as we need to provide credentials to access the path due to that download getting failed HOT 2
- Pact consumer core crash prevents interactions being completed when using V4 spec HOT 1
- [email protected]: Failed to find native module for linux-arm64 HOT 13
- [Stub server] Ignoring unsupported matching rules HOT 1
- pact-node\standalone\win32-1.88.83\pact\lib\ruby\bin.real\ruby.exe is not compatible with the version of Windows you're running HOT 8
- RFC: Remove CLI & Standalone API (Pact Standalone Tools - Ruby), and migrate into sister package pact-js-cli HOT 1
- RFC: Update pact-node branch with latest ruby standalone binaries and support multiple architectures HOT 1
- RFC: Support Alpine HOT 1
- Critical vulnerability for rack 0.0.0 in docker-scout HOT 2
- [email protected]: Failed to load native module in Linux-x64 platform (redhat ubi8 minimal) HOT 9
- No output due to EINVAL on Windows HOT 1
- CLI parameters with spaces broken since v14.3.5 HOT 3
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 pact-js-core.