Comments (13)
@travi new version released with those changes: 4.5.4.
Please let me know how that goes. Cheers.
from pact-js-core.
Also, that same password string is working fine for calls to publishPacts
from pact-js-core.
i've tried using \
and \\
in an attempt to escape the characters that appear to be (maybe?) causing splitting as well as url encoding the password. i'm not sure what other escaping methods would be more appropriate here, or if that is even what is causing the problem for sure.
any help in how to debug this a bit further would be greatly appreciated
from pact-js-core.
@mefellows Can you shine some light as to why the provider-verifier is doing this?
@travi can you give us a working example of how you create this issue?
from pact-js-core.
my script can be found here. it obviously does not contain the offending password, but i can at least share that the password does include the special characters &
, ^
, *
, and @
. I still see the *
and ^
in the output, but the segments that are in the input are the portions that follow the &
s (the @
happens to be in the first portion of the password, before the first &
).
My pact
{
"consumer": {
"name": "travi.org-admin"
},
"provider": {
"name": "travi-api"
},
"interactions": [
{
"description": "a GET request for the api catalog",
"request": {
"method": "get",
"path": ""
},
"response": {
"status": 200,
"headers": {},
"body": {
"_links": {
"self": {
"href": "https://api.travi.org/"
},
"rides": {
"href": "https://api.travi.org/rides"
},
"users": {
"href": "https://api.travi.org/users"
}
}
}
}
}
],
"metadata": {
"pactSpecificationVersion": "2.0.0"
},
"createdAt": "2016-03-27T04:22:06+00:00",
"_links": {
"self": {
"title": "Pact",
"name": "Pact between travi.org-admin (v0.0.1) and travi-api",
"href": "https://pact-api.travi.org/pacts/provider/travi-api/consumer/travi.org-admin/version/0.0.1"
},
"pb:consumer": {
"title": "Consumer",
"name": "travi.org-admin",
"href": "https://pact-api.travi.org/pacticipants/travi.org-admin"
},
"pb:provider": {
"title": "Provider",
"name": "travi-api",
"href": "https://pact-api.travi.org/pacticipants/travi-api"
},
"pb:latest-pact-version": {
"title": "Pact",
"name": "Latest version of this pact",
"href": "https://pact-api.travi.org/pacts/provider/travi-api/consumer/travi.org-admin/latest"
},
"pb:previous-distinct": {
"title": "Pact",
"name": "Previous distinct version of this pact",
"href": "https://pact-api.travi.org/pacts/provider/travi-api/consumer/travi.org-admin/version/0.0.1/previous-distinct"
},
"pb:diff-previous-distinct": {
"title": "Diff",
"name": "Diff with previous distinct version of this pact",
"href": "https://pact-api.travi.org/pacts/provider/travi-api/consumer/travi.org-admin/version/0.0.1/diff/previous-distinct"
},
"pb:pact-webhooks": {
"title": "Webhooks for the pact between travi.org-admin and travi-api",
"href": "https://pact-api.travi.org/webhooks/provider/travi-api/consumer/travi.org-admin"
},
"pb:tag-prod-version": {
"title": "Tag this version as 'production'",
"href": "https://pact-api.travi.org/pacticipants/travi.org-admin/versions/0.0.1/tags/prod"
},
"pb:tag-version": {
"title": "Tag version",
"href": "https://pact-api.travi.org/pacticipants/travi.org-admin/versions/0.0.1/tags/{tag}"
},
"curies": [
{
"name": "pb",
"href": "https://pact-api.travi.org/doc/{rel}",
"templated": true
}
]
}
}
let me know if there are additional details that would be helpful.
from pact-js-core.
Thanks @travi - I'll take a look at this and have created an issue over at the verifier. It's probably just a matter of properly escaping the string in the pact-provider-verifier
gem.
from pact-js-core.
Update: I've taken a quick look this morning and I am able to supply passwords with these chars to the provider verifier. I currently suspect https://github.com/pact-foundation/pact-node/blob/master/src/verifier.js#L58 is the issue, it should probably be wrapping these arguments in quotes.
from pact-js-core.
Cool, I'll see if I can fix that and do a release.
On Tue, Oct 4, 2016, 8:12 AM Matt Fellows [email protected] wrote:
Update: I've taken a quick look this morning and I am able to supply
passwords with these chars to the provider verifier. I currently suspect
https://github.com/pact-foundation/pact-node/blob/master/src/verifier.js#L58
is the issue, it should probably be wrapping these arguments in quotes.—
You are receiving this because you commented.Reply to this email directly, view it on GitHub
#22 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAjA5ECuPaiYB7kwz9q0ppCtfY1mzEutks5qwW-2gaJpZM4KGAtb
.
from pact-js-core.
I'm half way through a fix from this morning, I'll submit a PR in an hour or 2.
from pact-js-core.
i can confirm that the change in master does resolve the issue that i was seeing. thank you for the quick resolution. will there be a release that includes the fix cut soon?
from pact-js-core.
Good to hear. I'll get a release out today.
On Wed, Oct 5, 2016, 1:45 PM Matt Travi [email protected] wrote:
i can confirm that the change in master does resolve the issue that i was
seeing. thank you for the quick resolution. will there be a release that
includes the fix cut soon?—
You are receiving this because you modified the open/close state.Reply to this email directly, view it on GitHub
#22 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAjA5KMsRDNjqKQQGG8eKrMd65orAzjfks5qww9XgaJpZM4KGAtb
.
from pact-js-core.
Awesome news @travi, thanks for checking out the master and testing for us.
from pact-js-core.
Looks good on my end. Thanks again.
from pact-js-core.
Related Issues (20)
- 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
- Add metadata injection support to Pact JS Verifier 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 pact-js-core.