text:
spidercoordinator: add new podCIDRType "auto"

Add new podCIDRType "auto", It automatically switches podCIDRType based on the default CNI in the cluster. In addition, it improves the ability to get pod CIDR when default cni is cilium.

name: Pull request
about: Tell us about your contribution
labels: ["pr/release/none-required"]

Thanks for contributing !
Before submitting a pull request, make sure you read about our Contribution notice here: https://spidernet-io.github.io/spiderpool/contributing/development/pullrequest/#need-review
What this PR does / why we need it:
Add new podCIDRType "auto", It automatically switches podCIDRType based on the default CNI in the cluster. In addition, it improves the ability to get pod CIDR when default cni is cilium.
Which issue(s) this PR fixes:
https://github.com/spidernet-io/spiderpool/issues/2287
https://github.com/spidernet-io/spiderpool/issues/2188
Special notes for your reviewer:
make sure your commit is signed off

（1）需要有对应的 doc 说明
每种 type 是什么意思，适应场景是什么
（2）当前对于检测出来的  cidr，是否有用例闭环

文档已补
现在e2e已经切换 auto, 不同CNI组合可以正常跑过，算是冒烟测试。具体 e2e case @ty-dc 在补

（1）需要有对应的 doc 说明
每种 type 是什么意思，适应场景是什么
（2）当前对于检测出来的 cidr，是否有用例闭环

在 https://github.com/spidernet-io/spiderpool/blob/main/docs/usage/coordinator-zh_CN.md 中，没谈到 overlay 模式下，pod cidr 涉及到的 路由 同步问题

authors: cyclinder weizhoublue

repo: spidernet-io/spiderpool


text:
manual_correction.py script

First draft of manual_correction.py; work still in progress.
Fix: https://github.com/spine-generic/spine-generic/issues/85

So, the script should be working now. Please, can you try it?
I tested it from results/data folder as follow:
(venv_sct) valosek@macbook:~/ds002902-download_results/results/data$ python /usr/local/spine-generic/processing/manual_correction.py -i files.yml

Run also tested from any another directory with -ifolder flag:
(venv_sct) valosek@macbook:~/ds002902-download_results$ python /usr/local/spine-generic/processing/manual_correction.py -i ~/ds002902-download_results/results/data/files.yml -ifolder ~/ds002902-download_results/results/data/

@valosekj what is the status of this? i finished processing some data and could test your PR

@jcohenadad it is ready to use. You can test it. Only derivatives/label saving feature is not implemented yet.

Only derivatives/labels saving feature is not implemented yet.

i'll do it (i need it asap)

@valosekj sorry i did some butchering on your function, i hope that's ok with you 😅
i mostly wanted to create APIs, anticipating the move of spine-generic to a proper python package (#96), and avoiding some code duplication down the line.

Looks great 👍

source: gharchive/pull-request

authors: jcohenadad valosekj

repo: spine-generic/spine-generic

license: MIT

license_type: permissive

license_source: github-api


text:
Compilation Error Due to Missing Files

When trying to compile mantis, I'm getting an error when trying to make the coloreddbg object (obj/coloreddbg.o). This is due to the fact that there are two includes in coloreddbg.cc for which the files seem to be missing: MantisFS.h and sparsepp/spp.h.
Should there be a MantisFS file in this repo somewhere, and is sparsepp a separate library which needs to be included (from here I assume via a quick Google search: https://github.com/greg7mdp/sparsepp)?

Hello Rachel,
Thanks for bringing the issue to our attention. It seems we missed some files while merging code from the development branch to master.
We just fixed the issue on the latest commit. Please give it a try.
And let us know if you see any other issue.
Thanks,
Prashant

Thanks. Still getting a compilation error but now related to sdsl so it appears the missing file issue was fixed.
It's possible I'm just linking something wrong and the issue is on my end, although I have successfully linked to my build of sdsl when compiling other programs (SSBT) the via inclusion of
-L/path/to/sdsl/lib
in LDFLAGS in the Makefile, so I'm not entirely sure what's going wrong and yielding "undefined reference to sdsl::util and sdsl::osfstream" errors.

Yeah, the current Makefile assumes the sdsl lib to be present in the default linking directory. But it seems it's not there.
Just to make sure that's really the issue can you just comment this line in the Makefile
LDFLAGS += $(DEBUG) $(PROFILE) $(OPT) -lsdsl -lpthread -lboost_system \
-lboost_thread -lm -lz -lrt

to
LDFLAGS += $(DEBUG) $(PROFILE) $(OPT)  -lpthread -lboost_system \
-lboost_thread -lm -lz -lrt -L/path/to/sdsl/lib

and see if it works?

You can also just do :
LDFLAGS=-L/path/to/sdsl/lib make

since the Makefile will add the linker flags to whatever LDFLAGS are already present in the environment.

So interestingly, leaving off -lsdsl entirely produces a different error; I get
undefined reference to sdsl::XXX`
for far more functions (presumably every sdsl function that is called) where as with the library path it's only sdsl::util and sdsl::ofstream. Perhaps I have an outdated version of sdsl or something?

Hi Rachel,
The version of sdsl I cloned is from this commit:
commit eb20c308c844c262be597ca5c385e48ef5bc1421
Merge: e681b5f 2ce2c1c
Author: Matthias Petri <Matthias.Petri@gmail.com>
Date:   Sun Oct 22 14:57:17 2017 +0200

    Merge pull request #386 from danielsaad/patch-3

    Fixing  sd_vector in order to compile in g++7.2.0

Do you have an older version?
Thanks,
Prashant

I do appear to have an older version - I have the latest "release" which is from 2016. I'll give updating to the newest version a try -- thanks!

That worked, thanks! You may want to include a required version number/instructions to clone the git repo rather than download the latest release for sdsl in the README since it needs to be more recent than the most recent release - might help others in the future.

Great!! And yes, I will add the commit version for sdsl in the readme.
Thanks,
Prashant

source: gharchive/issue

authors: RSherman15 prashantpandey rob-p

repo: splatlab/mantis


text:
WIP: PAPP-10748: Added support for non-interactive OAuth

PAPP-10748: Added support for non-interactive OAuth

Closing stale PR since ticket is closed

authors: phantom-jacob pzhou-splunk

repo: splunk-soar-connectors/microsoftteams


text:
Azure Billing API Pagination Issue

The Azure billing API returns a max of 1000 events per requested timeframe.  If there are more than 1000 events the response will also include a skipToken value that contains that has the url for the next page of results to request.   The issue Im seeing is that I am only ever able to pull back 1000 events for a single timeframe.
The code for checking for the pagination skipToken url is
if '@odata.nextLink' in response_json:
nextLink = response_json['@odata.nextLink']
However from my testing with the API I am seeing that the field being returned is called  nextLink, not @odata.nextLink. So even though there is a URL with the next page of results to request the code above is skipping over it.

Addressed in 4.0.3

authors: JasonConger cramasta

repo: splunk/splunk-add-on-microsoft-azure


text:
Added Submodule Init to Workflow

I believe this is the only discrepancy remaining.

nice, lgtm

authors: brentspell will-rice

repo: spokestack/spokestack-python


text:
update recipe

replaced the table in "Create a Spore Within a Cluster" recipe with flowchart

"Do I have its private key" sounds a bit off, any suggestions? @code-monad @linnnsss @RongxinZhang

"Do I have its private key" sounds a bit off, any suggestions? @code-monad @linnnsss @RongxinZhang

sounds pretty clear to me. but there is a small logical point to consider:
Do I have its private key (though I'm not the owner)?

updated flowchart

authors: ShookLyngs anipenguin linnnsss

repo: sporeprotocol/spore-docs


text:
Fix homebrew ruby bin location.

Problem
I ran into an issue where homebrew ruby is not linked into the location brew-gem expects which breaks the resulting bin stubs installed by brew-gem.
Solution
Instead of hard coding a path in the homebrew prefix, query the ruby brew formula for its bin path. This fixes situations where homebrew ruby is desired but the ruby formula is not linked to the homebrew prefix path.

Great solution! Will take a look and merge soon. Thanks for the contribution!

authors: nicksieger pingortle

repo: sportngin/brew-gem

license: mit

license_source: bigquery


text:
Skip file not respected

System OS
Linux
Python Version
3.7 (CPython)
Install Source
pip / PyPi
Install version / commit hash
v4.2.4
Expected Behavior vs Actual Behavior
I would expect, that the parameter --respect-skip file in combination wiht --create-skip-file respect existing skip files and does not download the files
Steps to reproduce - Ensure to include actual links!
pipx run spotdl https://open.spotify.com/playlist/... --threads 4 --audio youtube-music --m3u --cookie-file /mnt/c/Temp/music.youtube.com_cookies.txt --create-skip-file --respect-skip-file --only-verified-results
As seen in the attached screenshot, already existing files are downloaded
Traceback
![image](https://github.com/spotDL/spotify-downloader/assets/234884/ea112b5e-9f2f-4af5-ab74-9f580a899cea)

Other details
No response

fixed

repo: spotDL/spotify-downloader


text:
Changed Audio encoding + add spotifyURL to metadata

Dynamic audio normalization flattens the sound and kill the music, got rid of it.

In case you wanna re-download your music library, you can just pick up the songURL's from the metadata.

Hey, @s1as3r you went through the code? Any comments?

Hey, @s1as3r you went through the code? Any comments?

Seems good to me!

About that though. Are we going with C style strings then?

Yes

Seems good to me!

What did you look for?

What did you look for?

I saw how you've implemented the Spotify link to get written into metatadata (i had no idea that there's a field for that in the meta). And i saw how you've changed the command audio encoding command.

Not exactly, what did you look for while deciding weather the PR gets merged or not?

There weren't any syntactic errors and  the 2nd feature is useful and doesn't add any complexity to spotDL.

There weren't any syntactic errors and  the 2nd feature is useful and doesn't add any complexity to spotDL.

Good. But there are few more things your supposed to look for

can it be simplified
is the documentation good enough for complete noobs
is the code readable

Well, I've asigned you to another draft pr. Do the same thing. When I doubt remember "the primary job of a programmer is to manage complexity"

With draft PRs, try to guide the contributor so that there is minimal wasted effort. A.k.A fund possible issue early, fix them early. And don't be afraid to say no.

Sometimes, the best improvements come from a no.

Dynamic audio normalization flattens the sound and kill the music, got rid of it.
In case you wanna re-download your music library, you can just pick up the songURL's from the metadata.

I am still getting autio distortion on this track https://open.spotify.com/track/4LeI9bVgG1tLJV0OmPBGie?si=HmlGsdgtSqSh-SZHNKHY1g

Are you using the spotdl from the next-rel-dev branch?
If yes, please open an issue, not many people look into merged PRs

Are you using the spotdl from the next-rel-dev branch?
If yes, please open an issue, not many people look into merged PRs

Yes it does i opened a new issue, Audio Distortion.


text:
Component wrapper: Unit test gesture recognizer touch handling

While doing this, I also found a bug in the code - the component wrapper was always sending “Highlighted” to its delegate as part of the componentWrapper:willUpdateSelectionState: method. This has now been fixed.

@spotify/objc-dev

Current coverage is 93.22% (diff: 100%)

Merging #92 into master will increase coverage by 0.71%

@@             master        #92   diff @@
==========================================
  Files            57         57
  Lines          3942       3943     +1
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits           3647       3676    +29
+ Misses          295        267    -28
  Partials          0          0

Powered by Codecov. Last update 618e085...785ef52

authors: JohnSundell codecov-io

repo: spotify/HubFramework


text:
Ensure removed hosts ZK node exists as an empty list

Reviewer: @mattnworb

Current coverage is 50.60% (diff: 66.66%)

Merging #995 into master will increase coverage by 0.03%

@@             master       #995   diff @@
==========================================
  Files           279        279
  Lines         13085      13092     +7
  Methods           0          0
  Messages          0          0
  Branches       1686       1687     +1
==========================================
+ Hits           6617       6625     +8
+ Misses         5970       5968     -2
- Partials        498        499     +1

Powered by Codecov. Last update aea9ee8...8feaf2f

authors: codecov-io negz

repo: spotify/helios


text:
Add timeout and process failure event handlers to tasks

Add additional event handlers to tasks
This adds two new event handlers:

Task timeout - gets triggered when a task times out.
Process failure - gets triggered if the process running a task fails for an unexpected reason.

Motivation and Context
We use event handlers to profile and monitor tasks (i.e. trigger alerts when tasks fail). These two task failure types will fail silently in our system because they don't trigger the FAILURE (or any other) event type.
Tests
I included unit tests which test each event handler.

Does @ulzha (event guru ^^) want to review?

Addressed comments, thanks!

[Current coverage][cc-pull] is 53.48%

Merging [#1698][cc-pull] into [master][cc-base-branch] will decrease coverage by 25.32%

@@             master      #1698   diff @@
==========================================
  Files            94         59     -35
  Lines         10285       8890   -1395
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
- Hits           8104       4754   -3350
- Misses         2181       4136   +1955
  Partials          0          0

Powered by Codecov. Last updated by [514a3bd...fd9df8b][cc-compare]
[cc-base-branch]: https://codecov.io/gh/spotify/luigi/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/spotify/luigi/compare/514a3bdacdebafbee3defa9965af886d1eca2ea9...fd9df8b9bc29355ffb938fed74bd3cb5e8626223
[cc-pull]: https://codecov.io/gh/spotify/luigi/pull/1698?src=pr

ping @Tarrasch - following up on this. Anything to do on my side?

LGTM. Though I wish somebody else too could have reviewed it too ... Anyways, good job! :)

authors: Tarrasch casey-green codecov-io

repo: spotify/luigi


text:
Document Task History

Add sphinx docs about how to enable the db task history, and what
functionality it provides (including screen shots). Adds a bit more
context to the existing docs on configuring the scheduler.
Refs #311

LGTM although I think we need to decide what to do with the task history long term

LGTM although I think we need to decide what to do with the task history long term

authors: erikbern jcrobak


text:
Migrated wiki to GitHub Pages + MkDocs ❤

Hey there! The context for this PR is in #153
Demo
First, here is a demo of the GitHub Pages + MkDocs running on my fork of this repo; https://vestrel00.github.io/mobius/
https://user-images.githubusercontent.com/4332753/158274451-fae0196f-14c0-467e-b659-7fa8234b87d1.mp4
Here's a side-by-side of the wiki (left) vs MkDocs (right) in a mobile browser.
https://user-images.githubusercontent.com/4332753/158274523-7247da7b-2cf7-4e83-858f-e8d77972747b.mp4
Here's what I've done in this PR
Here are the exact steps I took in cooking up this PR.

Install MkDocs on my machine (MBP - Big Sur)
Install Material for MkDocs on my machine
Clone the wiki

git clone https://github.com/spotify/mobius.wiki.git
I cloned it yesterday. The most recent commit in my clone is 66d6eef10cd91002f780e141d71dd57e6adebe78

Cloned wiki and placed it all into docs folder
Moved contents of wiki Home to README
Moved images to docs/assets/images folder
Removed wiki _Sidebar file and moved files into folders to match the structure in the wiki sidebar
Fixed links and made them relative and formatted non-code paragraphs
Added header titles to each docs page (the wiki pages used the file names as the page title)
Lower cased all file names in docs
Added mkdocs config (mkdocs is now ready to serve and build a fully functional site)
Added shell script for generating website via mkdocs

I'm not sure if there is a way to have done all this automatically. Even if there is, you can bet that I did a better job because I put a lot of love and care when working on this (I even made sure the markdown formatting is top-notch) ❤🔥

Next steps
If you like what you see, please feel free to merge this PR or just use it as a reference and DIY. In the case the you do merge this, here's what you need to do next to complete everything and get the website up and running.

Review this PR thoroughly and resolve every comment I added
Merge this PR
Install MkDocs on your machine
Install Material for MkDocs on your machine
Run the mkdocs.sh to generate the website locally

./mkdocs.sh
The website will be in the generated site folder
Move the site folder outside of the project directory

Create a new empty (orphan) branch called gh-pages

https://gist.github.com/ozh/4734410git checkout --orphan gh-pages
git rm -rf .

Add an empty file with the name .nojekyll

echo "" > .nojekyll

Move the contents of the site folder into the root folder of the project
Delete the empty site folder
Commit everything and push it up the gh-pages branch
Go to the GitHub Settings -> Code and automation (Pages)
Set source branch to gh-pages and folder to / (root)

This is typically done automagically by GitHub for you when pushing up the gh-pages branch for the first time.

Edit repository details and set the Website to https://spotify.github.io/mobius/
Celebrate! 🥂🎉

Maintenance
So you decided to adopt GitHub Pages + MkDocs? Here's how you'd keep it up-to-date.

Make all of the documentation changes in the main branch
Run the mkdocs.sh to generate the website locally

./mkdocs.sh
The website will be in the generated site folder

Checkout to the gh-pages branch

git checkout gh-pages

Delete all tracked and untracked files, except for the .nojekyll file
Move the contents of the site folder into the root folder of the project
Delete the empty site folder
Commit everything and push it up the gh-pages branch

It might take a few seconds or minutes for the website to update but it will 👌

You might want to look into automating these steps with GitHub actions. I'm not sure if the community came up with any automation around this yet. I do things manually on my projects. It's not much work IMO.

Great job! Really appreciated the detailed description and the demos. 😄
I'll merge this and follow the Next steps to get it up and running (thanks for the instructions too btw!)

❤ ❤ ❤ ❤ ❤ ❤ ❤ ❤ ❤ ❤ ❤ ❤ ❤ ❤ ❤ ❤ ❤ ❤ ❤ 🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥

repo: spotify/mobius


text:
ui: ios: Adding a device, pressing return submit the form / cannot scroll to expiry

There's a behavior that is a little bit annoying when adding a new device. Assigning the name pull the keyboard which hides and make it hard to configure other options, especially the ones that are at the bottom of the page as somehow you can't access them by scrolling down:
https://github.com/spr-networks/super/assets/1476421/ff8ead59-c914-47ab-b31e-4582af00de3b
If you press return on the keyboard it validates the form which generates the QR code and skip to the next UI. So I need to select into another edit box, and press return (in other edit box, pressing return just remove the keyboard without validating it) to then be able to scroll all the way down.
It's unclear if this behavior is meant to be able to add a device really fast by just assigning a name as it's probably what users do the most or if it's a bug, lemme know!

Got a fix for this now! :) Should be for add device view & also if other forms have the same issue.
Will push new app soon, Thanks again for your reports @0vercl0k

No worries at all @lts-po, thank you for all the fixes :) I believe this is fixed in the latest fwiw

repo: spr-networks/super


text:
nacos registry, register failed..

nacos registry, kyubi-gateway register failed..
在0.9版本中启动正常，1.0启动出现异常
alibaba cloud 0.2.1 0.2.2均出现该异常

@maojx0630 Update nacos-client to 1.0

@maojx0630 Update nacos-client to 1.0
It's version 1.0 that's the problem, but 0.9 won't.

It's version 1.0 that's the problem, but 0.9 won't.

It's your client, brother.

spring cloud alibaba nacos config and discovery in 0.22
It will be upgraded to 1.0?

@maojx0630 use 0.2.2.BUILD_SNAPSHOT

ok


text:
Spring Cloud Bus broken with Camden.SR5 and spring boot 1.5.1

I had a project with Camden.SR4 and spring boot 1.4.3. Spring Cloud Bus worked fine, however after incrementing version to Camden.SR5 and spring boot 1.5.1 POSTing to /bus/refresh will not refresh other services (only the service on which /bus/refresh is called is refreshed).

Duplicate of #55?

Hi Spencer,
Thank you for the hint on #55
However, I've retested everything. The issue is that Cloud Bus always works on MacOS X. With both 1.5.1 + Camden.SR5 and 1.4.3 + Camden.SR4. The issue is that it does not work on Windows 7. May be it is related to my particular Windows, I am not sure though. Do not have a second Windows PC to check :)
On Windows both 1.5.1 + Camden.SR5 and 1.4.3 + Camden.SR4 Clid Bus does not propagate refresh events to services.

By the way, Cloud Stream works fine. The issue is related to Cloud Bus

There was an issue upstream in spring cloud stream which caused a problem in bus (but not generic stream). Can you try with snapshots?

I have retested everything with latest releases of Boot - 1.5.2 and Cloud - Camden.SR6.
Everything works fine now. Bugs are fixed with these releases.
Thank you!

repo: spring-cloud/spring-cloud-bus


text:
WireMockTestExecutionListener#applicationContextBroken triggers load of failure app context for multiple times

Describe the bug
version: spring-cloud-contract-wiremock-3.1.3
I'm using spring cloud contract wiremock for integration testing. Sometimes my application context couldn't be created due to the exception thrown during the bean initialization process.
I expected the test to fail immediately after application context failure. but from the test log, I saw that the application context reloaded for multiples times and make it hard to debug. (we have some stateful component which couldn't be initialized twice and last context failure reason may not be the root cause)
in WireMockTestExecutionListener::applicationContextBroken, testContext.getApplicationContext() tries to load the context, and the method is called in beforeTestClass, afterTestClass and afterTestMethod:
	private boolean applicationContextBroken(TestContext testContext) {
		try {
			testContext.getApplicationContext();
			return false;
		}
		catch (Exception ex) {
			if (log.isDebugEnabled()) {
				log.debug("Application context is broken due to", ex);
			}
			return true;
		}
	}

Sample
I have a component which throws exception on creation:
@Slf4j
@Profile("failure")
@Component
public class FailureComponent {
    private static AtomicInteger counter = new AtomicInteger();

    public FailureComponent() {
        log.info("start failure component {}", counter.getAndIncrement());
        throw new IllegalStateException("fail forever");
    }

}

I expected that the component would only be loaded once, and then fail the test. but it runs for multiple times:
2022-10-29 11:53:38.102  INFO 11320 --- [           main] c.h.h.s.k.t.wiremock.FailureComponent    : start failure component 0
2022-10-29 11:53:38.477  INFO 11320 --- [           main] c.h.h.s.k.t.wiremock.FailureComponent    : start failure component 1
2022-10-29 11:53:38.711  INFO 11320 --- [           main] c.h.h.s.k.t.wiremock.FailureComponent    : start failure component 2
2022-10-29 11:53:38.970  INFO 11320 --- [           main] c.h.h.s.k.t.wiremock.FailureComponent    : start failure component 3

I'm not sure what the exact intent of that code is; however, it may be possible to benefit from org.springframework.test.context.TestContext.hasApplicationContext() which was introduced in Spring Framework 5.2.
Regarding repeated ApplicationContext failures, that has been addressed for Spring Framework 6.1. See Context Failure Threshold for details.

authors: coney sbrannen

repo: spring-cloud/spring-cloud-contract


text:
Allow generation of stubs at runtime

Current situation: to use contracts you have to build them and then publish to maven or git repository. It's pretty hard if you don't have strong Maven/Gradle knowledge. For example, if you want to publish just stubs without application jars it needs some hacking. Tagging production versions of the artifacts is not easy also. As well as downloading stubs from Nexus/Artifactory if you're working with frontend technologies.
Generally, it's possible to introduce simplified and easy to document workflow.

Assume we keep contracts in the producer repository (like private GitHub or Stash) - most popular model so far in most companies AFAIK.
Developers have at least read-only access to repositories they are collaborating with.
For frontend technologies, you can launch docker container just by providing the repository URL and optionally path to contracts (by default src/test/resources/contracts). We even don't need to know the groupId, artifactId and version. You can also specify tag or branch (prod or dev).
For backend Java services you can also use git url as in the 3 point and you don't have to deal with stubs versioning (just use the production tag.

Let's prototype the API!
@AutoConfigureStubRunner(properties = {
// already there
"stubrunner.git.branch=production",
// new
"stubrunner.path-to-contract=src/test/resources/contracts" },
repositoryRoot = "git://https://my-producer.com",
// new
generateAtRuntime = true)

The new property stubrunner.path-to-contract would override the place from which we pick contracts (instead of the default /META-INF/group-id/artifact-id/stubs and /META-INF/group-id/artifact-id/contracts). That way ids are not necessary in this case.
generateAtRuntime means that the stubs folder will be ignored and depending on what you have on the classpath (defaults to WireMock) would generate stubs at runtime and start WireMock servers at runtime too.
WDYT?

That looks like a great start to begin with, and possibly extendable for other use cases too! (dare I mention the pact broker? 😅)
But what will happen when you're consuming from multiple producers, each with their own git repo/branches?
Maybe we can throw in an @AutoConfigureStubRunners for this use case?

That looks like a great start to begin with, and possibly extendable for other use cases too! (dare I mention the pact broker? sweat_smile)

for Pact broker it works already like this. On the consumer side, we generate stubs at runtime.

But what will happen when you're consuming from multiple producers, each with their own git repo/branches?

:man_shrugging: Different test classes I guess?

Maybe we can throw in an @AutoConfigureStubRunners for this use case?

@AutoConfigureStubRunners({
@AutoConfigureStubRunner(properties = {
// already there
"stubrunner.git.branch=production",
// new
"stubrunner.path-to-contract=src/test/resources/contracts" },
repositoryRoot = "git://https://my-producer1.com",
// new
generateAtRuntime = true),
@AutoConfigureStubRunner(properties = {
// already there
"stubrunner.git.branch=production",
// new
"stubrunner.path-to-contract=src/test/resources/contracts" },
repositoryRoot = "git://https://my-producer2.com",
// new
generateAtRuntime = true),
@AutoConfigureStubRunner(properties = {
// already there
"stubrunner.git.branch=dev",
// new
"stubrunner.path-to-contract=src/test/resources/contracts" },
repositoryRoot = "git://https://my-producer3.com",
// new
generateAtRuntime = true)
})

:scream: :scream: :scream: :scream: :scream:
Why do we do this?
Let's maybe take a step back. I understand that this feature is considered to be implemented because we want to hasten the feedback loop. It's not the standard way of working with the tool that we suggest people use.
With the generateAtRuntime (draft name of the prop) we could remove one step of prototyping the API. We could point to a folder, git repo, whatever where only contracts lay and regardless of the fact, whether the stub is there or not, we will create one. This can help in situations where the contract is defined but stubs are not and you have to wait endlessly until someone finishes their work on the producer side.

What's the current status of this feature? Based on our conversation at Spring I/O this matches pretty closely to what I was thinking of (though is implemented in a better way than I was suggesting 😅).
I feel like in some ways the "consumer driven" workflow is incomplete until a feature like this is implemented. While a consumer could create a contract, their progress is somewhat blocked until the producer has time to stub out/implement the feature.

A prerequisite to this would be https://github.com/spring-cloud/spring-cloud-contract/issues/1150 . That way you don't have to even produce an artifact to run stubs. Just point the repo root to stubs://file://... and that way you will run the stubs. Next, we will allow to point to the folder with contract definitions and via a switch convert contract definitions to running stubs at runtime.

authors: TYsewyn jkubrynski marcingrzejszczak wkorando


text:
Credential properties for pact broker

Fallback to contractsRepositoryUsername and contractsRepositoryPassword (maven) or contractRepository.username and contractRepository.password (gradle) in case the pact broker options for the username and password are not set.
Closes #636

Codecov Report

Merging #642 into master will decrease coverage by 0.01%.
The diff coverage is 0%.

@@             Coverage Diff              @@
##             master     #642      +/-   ##
============================================
- Coverage     61.56%   61.55%   -0.02%
  Complexity     1996     1996
============================================
  Files           220      220
  Lines          8324     8326       +2
  Branches       1299     1299
============================================
  Hits           5125     5125
- Misses         2500     2502       +2
  Partials        699      699

Impacted Files
Coverage Δ
Complexity Δ

...contract/stubrunner/PactStubDownloaderBuilder.java
53.89% <0%> (-0.71%)
0 <0> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 1078ae8...428fe29. Read the comment docs.

Thanks a lot! A test would be useful though... Have you tested it at least manually against a broker?

Yes, I did manually test it against test.pact.dius.com.au.
I'll add one just to be sure!

authors: TYsewyn codecov-io marcingrzejszczak


text:
How to specify response headers for AWS ALB response?

Describe the bug
We're using the AWS adaptor, and want to manually control the details of the ALB response: the status code, payload, headers etc.
We previously had this working with a function of type:
Message<byte[]> apply(Mono<ApplicationLoadBalancerRequestEvent> event) {

This resulted in the function returning a well-formed ALB response JSON object with the contents we expected:
{
  "statusCode": 200,
  "headers": {
    "connection": "close",
    "content-type": "application/xml;charset=UTF-8",
    "date": "Mon, 16 Jan 2023 15:17:21 GMT",
    "server": "envoy",
    "transfer-encoding": "chunked",
    "x-envoy-upstream-service-time": "2061"
  },
  "body": "<redacted plain text string>"
}

However, we upgraded spring-cloud-function from https://github.com/spring-cloud/spring-cloud-function/compare/v3.2.6...v3.2.7, and now our response now has additional headers and a base64-encoded body:
{
  "isBase64Encoded": false,
  "headers": {
    "content-type": "application/xml;charset=UTF-8",
    "contentType": "application/json",
    "date": "Thu, 12 Jan 2023 14:37:55 GMT",
    "id": "81e9c32b-a7bc-3879-7895-535cbe39af08",
    "server": "envoy",
    "timestamp": "1673534274893",
    "transfer-encoding": "chunked",
    "x-envoy-upstream-service-time": "65",
    "x-source": "adaptor"
  },
  "body": "<redacted base64 string>",
  "statusCode": 200
}

Note the mismatch of isBase64Encoded and body fields.
We were wondering if these changes were intentional, and whether our use-case (manually controlled response contents) is still supported?
If so, how should we be doing this?
Thanks in advance for your help.

This could be a regression. Can you please provide a sample of ApplicationLoadBalancerRequestEvent you are sending (JSON view of it)

Sure, this is taken from cloudwatch logs, so should be to spec:
{
    "requestContext": {
        "elb": {
            "targetGroupArn": "arn:aws:elasticloadbalancing:eu-west-2:123456789012:targetgroup/Redacted/000000000000"
        }
    },
    "httpMethod": "POST",
    "path": "/redacted/path",
    "queryStringParameters": {},
    "headers": {
        "accept": "*/*",
        "content-length": "3773",
        "content-type": "application/xml",
        "host": "redacted.com",
        "user-agent": "insomnia/2022.7.1",
        "x-amzn-trace-id": "Root=1-63c68ccc-362800af6c39d63344f6954b",
        "x-forwarded-for": "1.2.3.4",
        "x-forwarded-port": "443",
        "x-forwarded-proto": "https"
    },
    "body": "[redacted]",
    "isBase64Encoded": false
}

Thank you, yes this is regression. For now you can use ApplicationLoadBalancerRequestEvent instead ( in know not ideal), but I will push a fix today and we have releases coming up this month

Ok, snapshot is available, please give it a try and let us know

repo: spring-cloud/spring-cloud-function


text:
[spring-cloud] Update routes when runtime

#spring-cloud
Hi,
I want to update routes when runtime
I find guide using actuator to add/delete/refresh routes, but I want to do it direct from app by programming
(I don't want to use discovery server/discovery client to change routes, I want to update it manual)
Thank you a lot

How you define your routes,if you define routes in static config file (like application.ymal orapplication.properties) or define routes use fluent api,update this routes will not works, because when application restart changes will be lost. if your want to update routes and persistence the change,you can implements RouteDefinitionRepository interface and support modify api,there is a simple example about this.

Closing due to age of the question. If you would like us to look at this issue, please comment and we will look at re-opening the issue.

publish a RefreshRoutesEvent.
See
https://github.com/spring-cloud/spring-cloud-gateway/blob/f2d91bde04783c402dd68de3e5f39014219c9664/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/actuate/AbstractGatewayControllerEndpoint.java#L90

Thank you. I will try doing it.

repo: spring-cloud/spring-cloud-gateway


text:
Fix property name for credentials file.

Property name should be:
spring.cloud.gcp.credentials.location

instead of:
spring.cloud.gcp.sql.credentials.location

@irvifa Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.

@irvifa Thank you for signing the Contributor License Agreement!

@irvifa just to clarify, what makes you think it should be spring.cloud.gcp.credentials.location?

Hi @dmitry-s it's causing confusion since in the docs it's mentioned to use the sql one meanwhile the example using the general one, please refer to https://github.com/spring-cloud/spring-cloud-gcp/blob/4fdb7e325428d1779a60ae72104ec9c9f917ed31/spring-cloud-gcp-samples/spring-cloud-gcp-sql-mysql-sample/src/main/resources/application.properties#L16

authors: dmitry-s irvifa pivotal-issuemaster

repo: spring-cloud/spring-cloud-gcp


text:
Can't set Content-Type in Feign client

I want to set the Content-Type header programatically. When I try this happens:
Caused by: feign.codec.EncodeException: Invalid mime type "{Content-Type}": does not contain '/'
	at feign.ReflectiveFeign$BuildEncodedTemplateFromArgs.resolve(ReflectiveFeign.java:346)
	at feign.ReflectiveFeign$BuildTemplateByResolvingArgs.create(ReflectiveFeign.java:213)
	at feign.SynchronousMethodHandler.invoke(SynchronousMethodHandler.java:72)
	at feign.hystrix.HystrixInvocationHandler$1.run(HystrixInvocationHandler.java:108)
	at com.netflix.hystrix.HystrixCommand$2.call(HystrixCommand.java:301)
	at com.netflix.hystrix.HystrixCommand$2.call(HystrixCommand.java:297)
	at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:46)
	... 27 common frames omitted
Caused by: org.springframework.http.InvalidMediaTypeException: Invalid mime type "{Content-Type}": does not contain '/'
	at org.springframework.http.MediaType.parseMediaType(MediaType.java:425)
	at org.springframework.http.MediaType.valueOf(MediaType.java:410)
	at org.springframework.cloud.netflix.feign.support.SpringEncoder.encode(SpringEncoder.java:64)
	at feign.ReflectiveFeign$BuildEncodedTemplateFromArgs.resolve(ReflectiveFeign.java:342)
	... 33 common frames omitted
Caused by: org.springframework.util.InvalidMimeTypeException: Invalid mime type "{Content-Type}": does not contain '/'
	at org.springframework.util.MimeTypeUtils.parseMimeType(MimeTypeUtils.java:239)
	at org.springframework.http.MediaType.parseMediaType(MediaType.java:422)
	... 36 common frames omitted

@FeignClient("x")
public interface XClient {
	@RequestMapping(value = "/api/something/{id}", method = POST)
	void x(@RequestHeader("Content-Type") String contentType, @PathVariable("id") Integer id,
		@RequestBody InputStream inputStream);
}

I ended up having to set a X-Content-Type2 header and setting up one of these:
@Bean
public RequestInterceptor contentTypeFilter() {
	return (req) -> {
		req.header("Content-Type", req.headers().get("X-Content-Type2").iterator().next());
	};
}

I am using:
spring-cloud-netflix-core-1.2.5.RELEASE.jar

I dont believe you can set it programmatically using @RequestHeader, I believe we only support doing it via the consumes property of @RequestMapping.

Is it possible to add support?
Would it be a good idea to feed it to the @RequestMapping annotation using SpEL?

I have same problem. Can I know some due date for this issue? My FeignClient request need to resend some header param from client application so I need dynamic value of header param.
Is something other option for this case? Thanks.

@thomasharin no due date.

This would have to be changed inside Spring MVC, am I right?

authors: ryanjbaxter sixcorners spencergibb thomasharin thorstenfrank

repo: spring-cloud/spring-cloud-netflix


text:
Sending multipart/form-data request via spring feign with files as Map throws error

I am trying to send multipart/form-data request as Map object of different types like below.
public static Map<String, Object> RequestBody(MultipartFile multipartfile)

  Map<String, Object> body = new HashMap<>();
  body.put("to", "abc@gmail.com");
  body.put("to", "xyz@gmail.com");
  body.put("file", multipartfile);
  return body;
end

Now trying to send this map to feign client.
MyClient.java
@FeignClient(name = "email", url = "${email_url}",
        configuration = Configuration.class)
public interface EmailClient {

    @PostMapping(value = "/email/send", consumes = MULTIPART_FORM_DATA_VALUE)
    Response sendEmail(@RequestBody Map<String, ?> requestBody);

}

I am getting this encoding error while sending the request
feign.codec.EncodeException: Getting multipart file's content bytes error
    at feign.form.spring.SpringSingleMultipartFileWriter.write(SpringSingleMultipartFileWriter.java:47)
    at feign.form.multipart.AbstractWriter.write(AbstractWriter.java:36)
    at feign.form.MultipartFormContentProcessor.process(MultipartFormContentProcessor.java:87)
    at feign.form.FormEncoder.encode(FormEncoder.java:105)
    at feign.form.spring.SpringFormEncoder.encode(SpringFormEncoder.java:84)
    at feign.ReflectiveFeign$BuildEncodedTemplateFromArgs.resolve(ReflectiveFeign.java:372)
    at feign.ReflectiveFeign$BuildTemplateByResolvingArgs.create(ReflectiveFeign.java:224)
    at feign.SynchronousMethodHandler.invoke(SynchronousMethodHandler.java:74)
    at feign.ReflectiveFeign$FeignInvocationHandler.invoke(ReflectiveFeign.java:103)

I am already configured feign form encoder for feign and the request is being sent successfully if no file is present in the request body.
Whether Spring feign client doesn't support this type of dynamic request body?
How can we achieve this feign? RequestPart will not help because I need to send files in request body also dynamically means file sending request will be dynamic for each request like file1, file2..

https://github.com/spring-cloud/spring-cloud-openfeign/blob/5aa1b7a5298d985e9e103da3752c932b0ebc4200/spring-cloud-openfeign-core/src/test/java/org/springframework/cloud/openfeign/valid/ValidFeignClientTests.java#L352
I think it is already supported. Please check your spring version

Yes, it should work. What version of Spring Cloud are you using? If the issue persists,
please provide a minimal, complete, verifiable example that reproduces the issue.

authors: Hemaraj-Gajaraj OlgaMaciaszek cbezmen

repo: spring-cloud/spring-cloud-openfeign


text:
Problems with feign and Oauth2RestTemplate

When the default RestTemplate send request is used, zipkin can track my request link. However, when using Oauth2RestTemplate to send a request to an Oauth2 protected service, zipkin cannot track it. And when using Feign, it is also impossible to track.

Can you tell us what versions you are using? How is the OAuth2RestTemplate created? We need more details.

If you would like us to look at this issue, please provide the requested information. If the information is not provided within the next 7 days this issue will be closed.

Closing due to lack of requested feedback. If you would like us to look at this issue, please provide the requested information and we will re-open the issue.

repo: spring-cloud/spring-cloud-sleuth


text:
Confluent repository needed for tests is moved

Confluent repository needed for tests is moved to spring-cloud-stream-binder-kafka-test-support
Following dependencies are moved to spring-cloud-stream-binder-kafka-test-support
*spring-cloud-stream-schema
*kafka-avro-serializer
*kafka-schema-registry
spring-cloud-stream-binder-kafka-test-support is brought into spring-cloud-stream-binder-kafka only in test scope
Fixes #121

I will need to test this, but I think that there's still some kind of transitive dependency between spring-cloud-stream-binder-kafka and the Confluent artifacts (still in test scope). Can we perhaps make a test artifact inside the project that depends on spring-cloud-stream-binder-kafka and contains those tests ?

@mbogoevici another set of commit is pushed to the PR.

I suggest we postpone merging this until we have a 1.3 branch later this week.

LGTM, merging.

Squashed, rebased and merged as d4aaf78

authors: ilayaperumalg mbogoevici sobychacko


text:
ChannelBindingService instantiation fails with Caused by: java.lang.NoClassDefFoundError: javax/validation/Validator

See https://github.com/spring-cloud-samples/tests/issues/7.

Full exception
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'bindingService' defined in class path resource [org/springframework/cloud/stream/config/ChannelBindingServiceConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.cloud.stream.binding.ChannelBindingService]: Factory method 'bindingService' threw exception; nested exception is java.lang.NoClassDefFoundError: org/springframework/validation/beanvalidation/CustomValidatorBean
    at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:599) ~[spring-beans-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1123) ~[spring-beans-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1018) ~[spring-beans-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:510) ~[spring-beans-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482) ~[spring-beans-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) ~[spring-beans-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) ~[spring-beans-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) ~[spring-beans-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) ~[spring-beans-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:776) ~[spring-beans-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:861) ~[spring-context-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:541) ~[spring-context-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759) ~[spring-boot-1.4.0.RELEASE.jar:1.4.0.RELEASE]
    at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:369) ~[spring-boot-1.4.0.RELEASE.jar:1.4.0.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:313) ~[spring-boot-1.4.0.RELEASE.jar:1.4.0.RELEASE]
    at org.springframework.boot.test.SpringApplicationContextLoader.loadContext(SpringApplicationContextLoader.java:103) [spring-boot-test-1.4.0.RELEASE.jar:1.4.0.RELEASE]
    at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:98) [spring-test-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:116) [spring-test-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:83) [spring-test-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:117) [spring-test-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:83) [spring-test-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:230) [spring-test-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:228) [spring-test-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:287) [spring-test-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) [junit-4.12.jar:4.12]
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:289) [spring-test-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:247) [spring-test-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:94) [spring-test-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) [junit-4.12.jar:4.12]
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71) [junit-4.12.jar:4.12]
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288) [junit-4.12.jar:4.12]
    at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58) [junit-4.12.jar:4.12]
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268) [junit-4.12.jar:4.12]
    at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61) [spring-test-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70) [spring-test-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.junit.runners.ParentRunner.run(ParentRunner.java:363) [junit-4.12.jar:4.12]
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:191) [spring-test-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.junit.runner.JUnitCore.run(JUnitCore.java:137) [junit-4.12.jar:4.12]
    at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:117) [junit-rt.jar:na]
    at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:42) [junit-rt.jar:na]
    at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:262) [junit-rt.jar:na]
    at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:84) [junit-rt.jar:na]
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.cloud.stream.binding.ChannelBindingService]: Factory method 'bindingService' threw exception; nested exception is java.lang.NoClassDefFoundError: org/springframework/validation/beanvalidation/CustomValidatorBean
    at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:189) ~[spring-beans-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:588) ~[spring-beans-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    ... 41 common frames omitted
Caused by: java.lang.NoClassDefFoundError: org/springframework/validation/beanvalidation/CustomValidatorBean
    at org.springframework.cloud.stream.binding.ChannelBindingService.<init>(ChannelBindingService.java:71) ~[spring-cloud-stream-1.1.0.BUILD-20160825.202155-52.jar:1.1.0.BUILD-SNAPSHOT]
    at org.springframework.cloud.stream.config.ChannelBindingServiceConfiguration.bindingService(ChannelBindingServiceConfiguration.java:100) ~[spring-cloud-stream-1.1.0.BUILD-20160825.202155-52.jar:1.1.0.BUILD-SNAPSHOT]
    at org.springframework.cloud.stream.config.ChannelBindingServiceConfiguration$$EnhancerBySpringCGLIB$$a668b560.CGLIB$bindingService$0(<generated>) ~[spring-cloud-stream-1.1.0.BUILD-20160825.202155-52.jar:1.1.0.BUILD-SNAPSHOT]
    at org.springframework.cloud.stream.config.ChannelBindingServiceConfiguration$$EnhancerBySpringCGLIB$$a668b560$$FastClassBySpringCGLIB$$8beec6bc.invoke(<generated>) ~[spring-cloud-stream-1.1.0.BUILD-20160825.202155-52.jar:1.1.0.BUILD-SNAPSHOT]
    at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228) ~[spring-core-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:356) ~[spring-context-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.cloud.stream.config.ChannelBindingServiceConfiguration$$EnhancerBySpringCGLIB$$a668b560.bindingService(<generated>) ~[spring-cloud-stream-1.1.0.BUILD-20160825.202155-52.jar:1.1.0.BUILD-SNAPSHOT]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_91]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_91]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_91]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_91]
    at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:162) ~[spring-beans-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    ... 42 common frames omitted

ChannelBindingService.validator is of type CustomValidatorBean which implements javax.validation.Validator.
https://github.com/spring-cloud-samples/tests/tree/master/turbine-amqp is the project that reproduces the problem. We are required to add the following to the pom.xml:
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-validation</artifactId>
</dependency

https://github.com/spring-cloud/spring-cloud-stream/blob/master/spring-cloud-stream/pom.xml#L21-L24
Looks like a required dependency on spring-boot-starter-web
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>

Yeah, I don't get it how the dependency is missing in turbine - is someone excluding the web starter so that they don't get the web stuff? I guess we can add an explicit dependency on validation here.

still facing same issue

authors: amansarpal mbogoevici spencergibb

repo: spring-cloud/spring-cloud-stream


text:
streams -> stream in asciidoc

Also update README.adoc

I wonder if we need to update README.adoc manually? If this needs to update automatically, what triggers it?

closing now that the following 2 commits are merged:
https://github.com/spring-cloud/spring-cloud-stream/commit/31915df2fe03d854556c44445cb02c82c370a1c5
https://github.com/spring-cloud/spring-cloud-stream/commit/102fb075767664d9e602080a0f71851845b19362

authors: ilayaperumalg markfisher


text:
View related "guides" in Learn section

I WANT to discover guides for a specific project
SO I can quickly start learning about specific objectives

GIVEN I clicked on the 'learn' tab of a project in the subheader
WHEN I reach the learn section
THEN I see specific guides with title, the first sentence of guide and a link to reach them

@gbufrem On first load (after restarting the app, which means after each deploy of a new feature) it will take time for getting all guides, therefore the project-page takes about 1.2minutes to load.

Sounds like the sort of data that can be pre-computed (so there is always a cached value to fallback on while the new values are being calculated).

@karinepires This is due to #574.
The problem is, guides metadata is stored within the document and shared as global state (I know...), which is a double-bug in itself:

you have to render a guide to get that metadata; ideally you should get that data when getting the list of guides
since that state is stored in memory, all application instances should compute all guides to get a full picture; but that's not what we're doing since rendered guides are stored in a shared cache.

You can keep using this method for now and I'll fix this with #574.

We've redesigned the website completely and this issue does not apply anymore.

authors: abdoughr bclozel dsyer karinepires

repo: spring-io/sagan


text:
getting 500

1 service not able to communicate with another service
even though eureka server  dashboard shows all 4 services up & running
getting this :
java.net.UnknownHostException: Failed to resolve 'MOHADANI-7410.in.oracle.com' after 2 queries
at io.netty.resolver.dns.DnsResolveContext.finishResolve(DnsResolveContext.java:1069)
Suppressed: reactor.core.publisher.FluxOnAssembly$OnAssemblyException:
this is  my host file:
127.0.0.1 peer1
#100.76.138.152 backup-server
127.0.0.1 peer2
#127.0.0.1 auth-server
#127.0.0.1 config
#127.0.0.1 registry
#127.0.0.1 auth-service
#127.0.0.1 rabbitmq
#127.0.0.1 CN=wls-sysadm
#10.40.73.56 whf00gbb.in.oracle.com
127.0.0.1 whf00gbb.in.oracle.com
#127.0.0.1 localhost

Hi @danishcool77 did you try by using the localhost?

Please reopen if your issue is not solved


text:
Wanted: Community maintainer for Spring Cloud etcd

Looking for someone to maintain this project with goals for releases and potentially moving out of the incubator (Spring Cloud AWS is community maintained).
This person (or team or org) should commit to long term maintenance.
Initial work would be done via Pull Requests (PRs), but as we get more comfortable, commit rights will be given.

You might try emailing the etcd-dev list: https://github.com/coreos/etcd#contact

@philips thanks for the tip.

https://groups.google.com/forum/?hl=en#!topic/etcd-dev/LJ9fjscvd7M

I'm in but I don't have any experience with this, but am sure I can get up to speed fast.

@rprakashg Thanks! I assume when you say "I don't have any experience with this", you mean maintaining an open source project. Not a problem. I go on holiday tomorrow until Jan 9. I try and put together some issues while I'm out that I see need updating and we can start with some PRs. They will be similar to many issues here.

And just because @rprakashg has volunteered, don't let that keep you from doing so as well. The more active maintainers, the better. I see at least two or three being a good number.

Yes @spencergibb sorry should have clarified that duh!

NP. Look forward to working with you.

Yep same here.

i'm a dev and i would like to contribute. ( i'm a noob for etcd )

hope spring-cloud-etcd support for etcd v3 :)

@dragontree101 that's for a different issue.
@amilarajans contributions are always welcome regardless of if you are a maintainer or not.

@spencergibb then looking forward to work with the team :)

@spencergibb I'd like to help as well.

@rprakashg @marcingasior I'm back from holiday. I didn't get a chance to add the issues. It's in my backlog.

I've added some issues today. Feel free to grab one. Please ask questions if there is clarification needed.

@spencergibb cool will check it out

@spencergibb I'm willing to work on this! Where should I begin?

The new issues https://github.com/spring-cloud-incubator/spring-cloud-etcd/issues

:+1:

Hi @spencergibb,
there is still interest and have a community maintainer for this project ?
Best

Indeed there is

Do i start from the oldest or from newest issues ?

It's so out of date, I'm not sure what is valid anymore.
We need to start at #58
It's a big job and I won't have time to walk you thru things in the near term.
We chat on https://gitter.im/spring-cloud/spring-cloud

Hi, @spencergibb
I have interest in contributing to this project and may be become maintainer if it's posible.
As first try, implemented #58 (https://github.com/spring-projects-experimental/spring-cloud-etcd/pull/60)
And i see next future tasks as -

made tests for discovery part (check every parameter, add aditional properties to discovery properties according to spring-cloud-consul)
move to jetcd (etcd v3 api library).
Unfortunately, they drop support for java 8, and i don't understand what can we do with this. May be we can discuss it with @lburgazzoli
review and made tests for config submodule

@sudoHackIn that would be great. Let's start with pull requests as you have done. Not super concerned about a java 11 baseline as next year spring is adopting a java 17 baseline (older baseline will be supported for sometime)

authors: amilarajans dragontree101 heitorfm marcingasior philips raoofm rprakashg spencergibb sudoHackIn venilnoronha


text:
Hope to increase custom host function

Sometimes we access OpenAI not necessarily through https://api.openai.com. Due to network reasons, sometimes we will build a proxy domain for requests. We hope to support custom host functionality, not just for OpenAI, but also for other AI language models. In most cases, we use this method for proxy access. Thank you very much for your efforts and hope you can consider this feature, which is really important for users in China and some other countries.

When there is a network blockade, we cannot make requests through https://api.openai.com/v1/chat/completions. However, we have set up a domain proxy ourselves, and it is possible to access it normally through https://${my-domain}/v1/chat/completions. I noticed that the current code has hardcoded "https://api.openai.com" as a fixed value, which prevents us from using spring-ai properly.

Have you checked the Spring AI OpenAI documentation?
And the available properties listed there: https://docs.spring.io/spring-ai/reference/api/chat/openai-chat.html#_chat_properties
Isn't the spring.ai.openai.base-url  what you need?

Have you checked the Spring AI OpenAI documentation?
And the available properties listed there: https://docs.spring.io/spring-ai/reference/api/chat/openai-chat.html#_chat_properties
Isn't the spring.ai.openai.base-url  what you need?

I'm sorry for this, I didn't authenticate to check the document, thank you very much for your reply.

authors: jaychoubaby tzolov

repo: spring-projects/spring-ai


text:
refactor ChromaVectorStore builder API

The commit restructures the ChromaVectorStore builder pattern to use a no-args constructor with fluent API for setting the ChromaApi.
This change:

Makes builder creation consistent with other vector stores
Moves ChromaApi validation to the doValidate method
Improves builder API ergonomics

The change requires updating all builder usages to use the new .chromaApi() method instead of passing it in the constructor.

great!  merged in e2825c98776e67605ac4e3d0722cff269e87a0a1

authors: markpollack sobychacko


text:
Refactor core image

Summary
Refactored Image Object
Description
In the case of the original image objects, we initialized them by passing both base64 and URL as constructor arguments, and returned their values through the getUrl and getBase64 methods.
However, this approach made it challenging to clearly indicate small differences between various providers leading to scalability issues when adding new types beyond base64 and URL.
To solve this, we have separated the original Image object into the Image and ImageType interfaces. Each module defines an enum that implements the ImageType interface (e.g., OpenAiImageType, etc.), allowing us to distinguish between the image's provider and format. This enum can be flexibly applied to situations like the Request's Response Format.
//  example code
  (req, res) -> {
    return switch(req.responseFormat()) {
      case URL -> new MyUrlImage(res.data());
      case B64 -> new MyBase64Image(res.data());
      default -> throw new MyException("Unsupported type")
  }
}

Moreover, through the Image interface, all image objects can be uniformly treated, making the design easily adaptable even when new response formats or providers are added.
Please kindly review the proposed structure change to resolve this issue.
I am requesting your review as you are the most recent committer to this file.
@markpollack
Thank you.

Thanks, trying to catch up on many things, i'll get to it.  Appreciate the PR.

I know that just by looking at the number of merges and commits, this project is rapidly changing and you are working hard.
Although it might be insufficient, I hope it helps.

authors: markpollack youngmoneee


text:
No shortcut button for indentation / unindentation

The keyboard shortcuts work perfectly though!

Moving this to https://github.com/springload/draftail/issues/111.

authors: thibaudcolas tomdyson

repo: springload/wagtaildraftail


text:
How can i install in windows 10.

I installed VTK 8.1, PCL 1.8.1, Qt 5.7. And i build this tool. I got error with .dll when i run .exe file. How can i fix it?

Hi, how did you build the .exe file?  I myself am having issues building the file when i try to build it with visual Studio 2019.

I build it with visual studio 2015. Did you fix it?

Sadly I did not, I get 53 errors when trying to build the core + visualizer .exe . I found a different tool that looks promising though :
https://github.com/yzrobot/cloud_annotation_tool

Is that for label like for kitti 3d?

Hi，I also met the problem for the point_cloud_annotation_tool.exe file.
I build the tool with 0 errors. However, when I run the generated .exe file, the error is 应用程序无法正常启动(0xc000007b)
Moreover, in the same folder, only two files are generated.
Anyone knows why?
Because I build VTK8.0, PCL-1.8.1 and QT5.7 successfully, so I think the errors are related to the last step which is to build the annotation tool.

authors: MariusKM Taehwan-Lab liuyuancv

repo: springzfx/point-cloud-annotation-tool


text:
v2 of the Twitter Ads API

I'm very sorry that I created the issue but maybe it will be also actual for another developers who want to ask about supported Twitter ADS API version by the twitter4j-ads library. As I know the v1 will be turned off on January 10th, 2018 by Twitter. Could you tell me please if the current twitter4j-ads library (1.1 version) supports Twitter ADS API v2? Or a new special twitter4j-ads library version will be released to support the Twitter ADS API v2?
Thank you.

The target to release v2 compatible version is this week - the process of uploading JAR to Maven is still manual and time consuming but definitely want to say that community help is appreciated to test the changes, add anything missed, add test coverage etc. Until there is CI to test and automatically release setup we can only update the Maven JAR on something like a quarterly schedule.

v 2.1 has been released


text:
🛑 Mitgliederdatenbank is down

In 9714253, Mitgliederdatenbank (https://login.sp-ps.ch/tocco) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Mitgliederdatenbank is back up in 1edd702 after 6 minutes.

repo: spschweiz/status


text:
SAXParseException: mismatched tag when getting snapshots

I've been trying to use moto for mock testing in my zgres project and have hit a SAXParseException exception. You can reproduce using the following commands:
$ git clone git@github.com:jinty/zgres.git
Cloning into 'zgres'...
remote: Counting objects: 876, done.
remote: Compressing objects: 100% (9/9), done.
remote: Total 876 (delta 0), reused 0 (delta 0), pack-reused 867
Receiving objects: 100% (876/876), 218.33 KiB | 27.00 KiB/s, done.
Resolving deltas: 100% (616/616), done.
Checking connectivity... done.
$ cd zgres
$ git checkout moto_snapshot_mismashed_tag
Branch moto_snapshot_mismashed_tag set up to track remote branch moto_snapshot_mismashed_tag from origin.
Switched to a new branch 'moto_snapshot_mismashed_tag'
$ tox -- zgres/tests/test_ec2.py
GLOB sdist-make: /Users/jinty/tmp/zgres/setup.py
py35 create: /Users/jinty/tmp/zgres/.tox/py35
py35 installdeps: pytest, pytest-asyncio, zake, boto, psycopg2, moto
py35 inst: /Users/jinty/tmp/zgres/.tox/dist/zgres-0.2.post32.dev232249522.zip
py35 installed: boto==2.38.0,Flask==0.10.1,httpretty==0.8.10,itsdangerous==0.24,Jinja2==2.8,kazoo==2.2.1,MarkupSafe==0.23,moto==0.4.15,psycopg2==2.6.1,py==1.4.30,pytest==2.8.2,pytest-asyncio==0.2.0,requests==2.8.1,six==1.10.0,Werkzeug==0.10.4,wheel==0.24.0,xmltodict==0.9.2,zake==0.2.2,zgres==0.2.post32.dev232249522
py35 runtests: PYTHONHASHSEED='1238754444'
py35 runtests: commands[0] | python setup.py develop
running develop
running egg_info
writing entry points to zgres.egg-info/entry_points.txt
writing dependency_links to zgres.egg-info/dependency_links.txt
writing zgres.egg-info/PKG-INFO
writing top-level names to zgres.egg-info/top_level.txt
reading manifest file 'zgres.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'zgres.egg-info/SOURCES.txt'
running build_ext
Creating /Users/jinty/tmp/zgres/.tox/py35/lib/python3.5/site-packages/zgres.egg-link (link to .)
Adding zgres 0.2.post32.dev232249522 to easy-install.pth file
Installing zgres-apply script to /Users/jinty/tmp/zgres/.tox/py35/bin
Installing zgres-deadman script to /Users/jinty/tmp/zgres/.tox/py35/bin
Installing zgres-sync script to /Users/jinty/tmp/zgres/.tox/py35/bin

Installed /Users/jinty/tmp/zgres
Processing dependencies for zgres==0.2.post32.dev232249522
Finished processing dependencies for zgres==0.2.post32.dev232249522
py35 runtests: commands[1] | py.test zgres/tests/test_ec2.py
============================================================= test session starts =============================================================
platform darwin -- Python 3.5.0, pytest-2.8.2, py-1.4.30, pluggy-0.3.1
rootdir: /Users/jinty/tmp/zgres, inifile:
plugins: asyncio-0.2.0
collected 2 items

zgres/tests/test_ec2.py .F

================================================================== FAILURES ===================================================================
___________________________________________________________ test_ec2_backup_plugin ____________________________________________________________

get_instance_metadata = <function get_instance_metadata at 0x1089300d0>, psycopg2 = <MagicMock name='psycopg2' id='4438517800'>
ec2_backup_plugin = <zgres.ec2.Ec2SnapshotBackupPlugin object at 0x108929be0>

    @mock_ec2
    @mock.patch('zgres.ec2.psycopg2')
    @mock.patch('boto.utils.get_instance_metadata', autospec=True)
    def test_ec2_backup_plugin(get_instance_metadata, psycopg2, ec2_backup_plugin):
        # setup
        import boto.ec2
        get_instance_metadata.side_effect = mock_get_instance_metadata()
        metadata = get_instance_metadata()
        az = metadata['placement']['availability-zone']
        region = az[:-1]
        conn = boto.ec2.connect_to_region(region)
        reservation = conn.run_instances('ami-12341234')
        instance = reservation.instances[0]
        vol_f = conn.create_volume(10, az)
        vol_f.attach(instance.id, '/dev/sdf')
        vol_g = conn.create_volume(10, az)
        vol_g.attach(instance.id, '/dev/sdg')
        metadata['instance-id'] = instance.id # act as if we are code running on the server we just launched
        # test
        ec2_backup_plugin.app.config = {
                'ec2-snapshot': {
                    'dev.1.device': '/dev/sdf',
                    'dev.1.iops': '1000',
                    'dev.1.size': '300',
                    'dev.1.volume_type': 'gp2',
                    'dev.2.device': '/dev/sdg',
                    }}
        ec2_backup_plugin.initialize()
        # make some snapshots
        ec2_backup_plugin.pg_backup()
        # restore from the snapshots I just made
>       ec2_backup_plugin.pg_restore()

zgres/tests/test_ec2.py:95:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
zgres/ec2.py:145: in pg_restore
    snapshots = self._get_my_snapshots(conn)
zgres/ec2.py:104: in _get_my_snapshots
    'tag:zgres:db_id': self.app.database_identifier}):
.tox/py35/lib/python3.5/site-packages/boto/ec2/connection.py:2460: in get_all_snapshots
    [('item', Snapshot)], verb='POST')
.tox/py35/lib/python3.5/site-packages/boto/connection.py:1181: in get_list
    xml.sax.parseString(body, h)
/opt/local/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/xml/sax/__init__.py:48: in parseString
    parser.parse(inpsrc)
/opt/local/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/xml/sax/expatreader.py:110: in parse
    xmlreader.IncrementalParser.parse(self, source)
/opt/local/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/xml/sax/xmlreader.py:125: in parse
    self.feed(buffer)
/opt/local/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/xml/sax/expatreader.py:214: in feed
    self._err_handler.fatalError(exc)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <xml.sax.handler.ErrorHandler object at 0x107d4ccf8>, exception = SAXParseException('mismatched tag',)

    def fatalError(self, exception):
        "Handle a non-recoverable error."
>       raise exception
E       xml.sax._exceptions.SAXParseException: <unknown>:20:129: mismatched tag

/opt/local/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/xml/sax/handler.py:38: SAXParseException
===================================================== 1 failed, 1 passed in 1.02 seconds ======================================================
ERROR: InvocationError: '/Users/jinty/tmp/zgres/.tox/py35/bin/py.test zgres/tests/test_ec2.py'
___________________________________________________________________ summary ___________________________________________________________________
ERROR:   py35: commands failed

Inside of the XML response, I'm seeing <value><MagicMock name=\'psycopg2.connect().cursor().fetchall().__getitem__().__getitem__()\' id=\'4500917664\'></value>. I think you may be passing a mock somewhere instead of a valid parameter. Feel free to reopen if that is not the case

On Mon, Nov 02, 2015 at 08:23:20PM -0800, Steve Pulec wrote:

Inside of the XML response, I'm seeing <value><MagicMock name=\'psycopg2.connect().cursor().fetchall().__getitem__().__getitem__()\' id=\'4500917664\'></value>. I think you may be passing a mock somewhere instead of a valid parameter. Feel free to reopen if that is not the case

Aaargh... gonna go cut some holes in that paper bag...
Thanks!
--
Brian Sutherland

On Mon, Nov 02, 2015 at 08:23:20PM -0800, Steve Pulec wrote:

Inside of the XML response, I'm seeing <value><MagicMock name=\'psycopg2.connect().cursor().fetchall().__getitem__().__getitem__()\' id=\'4500917664\'></value>. I think you may be passing a mock somewhere instead of a valid parameter. Feel free to reopen if that is not the case

On second thoughts this is not too bad. The mock was passed as the value
of a tag. Interestingly, this test case fails as well:
from moto import mock_ec2
import boto

@mock_ec2
def test_add_servers():
    conn = boto.connect_ec2('the_key', 'the_secret')
    vol = conn.create_volume(10, 'us-east-1a')
    snapshot = conn.create_snapshot(vol.id, 'Desc')
    snapshot.add_tags({'key': '</closed>'})
    print conn.get_all_snapshots()[0]

test_add_servers()

I would argue that it either needs to error on add_tags() if <> is not
allowed or not error at all. The current behaviour is to error at
get_all_snapshots(). Gonna open the issue again.
--
Brian Sutherland

hmm, I don't seem to have permission to re-open the issue

Yes, you are correct. It looks like we need to add some escaping.

authors: jinty spulec

repo: spulec/moto


text:
DynamoDB - Send item to DDB Stream on update, not just on create

Created DynamoDB items were already send to DynamoDB streams.
This PR also adds supports updates to be send through

Coverage decreased (-0.1%) to 93.99% when pulling 9971bcdfcd982a8765c852fb03347682f8da96f4 on bblommers:dynamodbstreams_update_item into 11e64109eb2ebc0480ab9ce84d6fdf2f177f7c7c on spulec:master.

Looks great; thanks!

authors: bblommers coveralls spulec


text:
after updating Spyder and lauch this error shows up.

Description
What steps will reproduce the problem?

import mne
Traceback (most recent call last):
File "", line 1, in
import mne
File "/home/user/.conda/envs/mne/lib/python3.7/site-packages/mne/init.py", line 22, in
from .utils import (set_log_level, set_log_file, verbose, set_config,
File "/home/user/.conda/envs/mne/lib/python3.7/site-packages/mne/utils/init.py", line 9, in
from .check import (check_fname, check_version, check_random_state,
File "/home/user/.conda/envs/mne/lib/python3.7/site-packages/mne/utils/check.py", line 14, in
from ._logging import warn, logger
File "/home/user/.conda/envs/mne/lib/python3.7/site-packages/mne/utils/_logging.py", line 15, in
from ..fixes import _get_args
File "/home/user/.conda/envs/mne/lib/python3.7/site-packages/mne/fixes.py", line 21, in
from scipy import linalg
File "/home/user/.conda/envs/mne/lib/python3.7/site-packages/scipy/init.py", line 63, in
from numpy import show_config as show_numpy_config
ImportError: cannot import name 'show_config' from 'numpy' (unknown location)
Traceback
  File "/home/user/.conda/envs/mne/lib/python3.7/site-packages/traitlets/traitlets.py", line 528, in get
    value = obj._trait_values[self.name]
KeyError: 'banner'

During handling of the above exception, another exception occurred:

ImportError: numpy.core.multiarray failed to import

Versions

Spyder version: 4.1.1
Python version: 3.7.6
Qt version: 5.12.5
PyQt5 version: 5.12.3
Operating System: Linux 5.3.0-42-generic

Dependencies
atomicwrites >=1.2.0         :  1.3.0 (OK)
chardet >=2.0.0              :  3.0.4 (OK)
cloudpickle >=0.5.0          :  1.3.0 (OK)
diff_match_patch >=20181111  :  20181111 (OK)
intervaltree                 :  None (OK)
IPython >=4.0                :  7.13.0 (OK)
jedi =0.14.1                 :  0.14.1 (OK)
keyring                      :  None (OK)
nbconvert >=4.0              :  5.6.1 (OK)
numpydoc >=0.6.0             :  0.9.2 (OK)
pexpect >=4.4.0              :  4.8.0 (OK)
pickleshare >=0.4            :  0.7.5 (OK)
psutil >=0.3                 :  5.7.0 (OK)
pygments >=2.0               :  2.6.1 (OK)
pylint >=0.25                :  2.4.4 (OK)
pyls >=0.31.2;<0.32.0        :  0.31.9 (OK)
xdg >=0.26                   :  0.26 (OK)
zmq >=17                     :  18.1.1 (OK)
qdarkstyle >=2.7             :  2.8 (OK)
qtawesome >=0.5.7            :  0.7.0 (OK)
qtconsole >=4.6.0            :  4.7.1 (OK)
qtpy >=1.5.0                 :  1.9.0 (OK)
rtree >=0.8.3                :  0.9.3 (OK)
sphinx >=0.6.6               :  2.4.0 (OK)
spyder_kernels >=1.8.1;<2.0.0:  1.8.1 (OK)
watchdog                     :  None (OK)
cython >=0.21                :  None (NOK)
matplotlib >=2.0.0           :  None (NOK)
numpy >=1.7                  :  None (NOK)
pandas >=0.13.1              :  None (NOK)
scipy >=0.17.0               :  None (NOK)
sympy >=0.7.3                :  None (NOK)

This happens because you probably installed numpy with pip and not with conda. This is not our fault.
Besides, by doing that you probably corrupted your Anaconda installation, so now you have to remove it and reinstall it again.

repo: spyder-ide/spyder


text:
Selenium webDriver lib

From Demchuk...@gmail.com on 2013-05-20T04:27:50Z
Spyder Version:  2.2.0
Python Version:  2.7.3
Qt Version:      4.8.2, PyQt4 (API v2) 4.9.4 on Darwin
Mac OS Version:  10.8.3
Hi, I just use few days spider IDE for my python script
But I saw that your IDE have no webdriver lib
I just copy selenium folder to /Applications/Spyder.app/Contents/Resources/lib/python2.7/
And all works good)
May be you can add webdriver as new lib?
Thank you
Original issue: http://code.google.com/p/spyderlib/issues/detail?id=1398

From ccordoba12 on 2013-06-28T22:05:58Z
It doesn't work that way, you need to change your interpreter's path in
Tools > Preferences > Console > Advanced Settings > Python Executable
to point to the Python version where you installed webdriver to. But I'm glad that a simple copy/paste also worked for you.
Status: Invalid


text:
can not install spyder using pip!

Issue Report Checklist

[ ] Searched the issues page for similar reports
[ ] Read the relevant sections of the Spyder Troubleshooting Guide and followed its advice
[ ] Reproduced the issue after updating with conda update spyder (or pip, if not using Anaconda)
[ ] Could not reproduce inside jupyter qtconsole (if console-related)
[ ] Tried basic troubleshooting (if a bug/error)

[ ] Restarted Spyder
[ ] Reset preferences with spyder --reset
[ ] Reinstalled the latest version of Anaconda
[ ] Tried the other applicable steps from the Troubleshooting Guide

[ ] Completed the Problem Description, Steps to Reproduce and Version sections below

Problem Description
can not install spyder using pip!
What steps reproduce the problem?

python3 -m pip  -U pip
python3 -m pip  -U spyder

What is the expected output? What do you see instead?
ERROR: Could not find a version that satisfies the requirement pyqtwebengine<5.13 (from spyder) (from versions: 5.14.0, 5.15.0, 5.15.1)
ERROR: No matching distribution found for pyqtwebengine<5.13 (from spyder)
Paste Traceback/Error Below (if applicable)

PASTE TRACEBACK HERE

Versions

Spyder version:  4.2.0
Python version:  3.7.3
Qt version:
PyQt version:
Operating System name/version:

Distributor ID: Raspbian
Description:    Raspbian GNU/Linux 10 (buster)
Release:        10
Codename:       buster
Dependencies

PASTE DEPENDENCIES HERE

Distributor ID: Raspbian

Hey @zengdabo, thanks for reporting. Unfortunately, Spyder is not supported in Raspberry Pi due precisely to our usage of the pyqtwebengine package. The thing is there are no pyqtwebengine packages provided for Arm64 in PyPI, sorry.


text:
connect github for spyder

Description
What steps will reproduce the problem?

connect github for spyderconnect github for spyderconnect github for spyderconnect github for spyderconnect github for spyderconnect github for spyder
Versions

Spyder version: 4.1.4
Python version: 3.8.3
Qt version: 5.9.7
PyQt5 version: 5.9.2
Operating System: Windows 7

Dependencies

# Mandatory:
atomicwrites >=1.2.0           :  1.4.0 (OK)
chardet >=2.0.0                :  3.0.4 (OK)
cloudpickle >=0.5.0            :  1.5.0 (OK)
diff_match_patch >=20181111    :  20200713 (OK)
intervaltree                   :  None (OK)
IPython >=4.0                  :  7.16.1 (OK)
jedi =0.17.1                   :  0.17.1 (OK)
nbconvert >=4.0                :  5.6.1 (OK)
numpydoc >=0.6.0               :  1.1.0 (OK)
paramiko >=2.4.0               :  2.7.1 (OK)
parso =0.7.0                   :  0.7.0 (OK)
pexpect >=4.4.0                :  4.8.0 (OK)
pickleshare >=0.4              :  0.7.5 (OK)
psutil >=5.3                   :  5.7.0 (OK)
pygments >=2.0                 :  2.6.1 (OK)
pylint >=1.0                   :  2.5.3 (OK)
pyls >=0.34.0;<1.0.0           :  0.34.1 (OK)
qdarkstyle >=2.8               :  2.8.1 (OK)
qtawesome >=0.5.7              :  0.7.2 (OK)
qtconsole >=4.6.0              :  4.7.5 (OK)
qtpy >=1.5.0                   :  1.9.0 (OK)
rtree >=0.8.3                  :  0.9.4 (OK)
sphinx >=0.6.6                 :  3.1.2 (OK)
spyder_kernels >=1.9.2;<1.10.0 :  1.9.2 (OK)
watchdog                       :  None (OK)
zmq >=17                       :  19.0.1 (OK)

# Optional:
cython >=0.21                  :  0.29.21 (OK)
matplotlib >=2.0.0             :  3.2.2 (OK)
numpy >=1.7                    :  1.18.5 (OK)
pandas >=0.13.1                :  1.0.5 (OK)
scipy >=0.17.0                 :  1.5.0 (OK)
sympy >=0.7.3                  :  1.6.1 (OK)

Hey @PhanTheMinhChau, thanks for reporting. Unfortunately, we don't have a way to connect Spyder to Github yet, but we'll try to add one next year.

Did you manage to make the connection?

Hey @Jaquinor, we have now this plugin
https://github.com/spyder-ide/spyder-vcs
but it's still in alpha stage.

Very kind, thank you very much, I will try it.

authors: Jaquinor PhanTheMinhChau ccordoba12


text:
Spyder issue reporter error after installation of tesseract

Description
What steps will reproduce the problem?

it creates only after the installation of the tesseract ocr in my system
Traceback
Traceback (most recent call last):
  File "c:\users\sanjay chakravarthy\appdata\local\programs\python\python37\lib\site-packages\spyder\plugins\completion\plugin.py", line 523, in update_completion_status
    value, _ = value.split('(')
ValueError: too many values to unpack (expected 2)
Traceback (most recent call last):
  File "c:\users\sanjay chakravarthy\appdata\local\programs\python\python37\lib\site-packages\spyder\plugins\completion\plugin.py", line 523, in update_completion_status
    value, _ = value.split('(')
ValueError: too many values to unpack (expected 2)
Traceback (most recent call last):
  File "c:\users\sanjay chakravarthy\appdata\local\programs\python\python37\lib\site-packages\spyder\plugins\completion\plugin.py", line 523, in update_completion_status
    value, _ = value.split('(')
ValueError: too many values to unpack (expected 2)

Versions

Spyder version: 5.3.2  (pip)
Python version: 3.7.9 64-bit
Qt version: 5.15.2
PyQt5 version: 5.15.7
Operating System: Windows 10

Dependencies
# Mandatory:
atomicwrites >=1.2.0          :  1.4.1 (OK)
chardet >=2.0.0               :  5.0.0 (OK)
cloudpickle >=0.5.0           :  2.1.0 (OK)
cookiecutter >=1.6.0          :  2.1.1 (OK)
diff_match_patch >=20181111   :  20200713 (OK)
intervaltree >=3.0.2          :  3.1.0 (OK)
IPython >=7.31.1;<8.0.0       :  7.34.0 (OK)
jedi >=0.17.2;<0.19.0         :  0.18.1 (OK)
jellyfish >=0.7               :  0.9.0 (OK)
jsonschema >=3.2.0            :  4.9.1 (OK)
keyring >=17.0.0              :  23.7.0 (OK)
nbconvert >=4.0               :  6.5.0 (OK)
numpydoc >=0.6.0              :  1.4.0 (OK)
paramiko >=2.4.0              :  2.11.0 (OK)
parso >=0.7.0;<0.9.0          :  0.8.3 (OK)
pexpect >=4.4.0               :  4.8.0 (OK)
pickleshare >=0.4             :  0.7.5 (OK)
psutil >=5.3                  :  5.9.1 (OK)
pygments >=2.0                :  2.12.0 (OK)
pylint >=2.5.0;<3.0           :  2.14.5 (OK)
pyls_spyder >=0.4.0           :  0.4.0 (OK)
pylsp >=1.5.0;<1.6.0          :  1.5.0 (OK)
pylsp_black >=1.2.0           :  1.2.1 (OK)
qdarkstyle >=3.0.2;<3.1.0     :  3.0.3 (OK)
qstylizer >=0.1.10            :  0.2.1 (OK)
qtawesome >=1.0.2             :  1.1.1 (OK)
qtconsole >=5.3.0;<5.4.0      :  5.3.1 (OK)
qtpy >=2.1.0                  :  2.1.0 (OK)
rtree >=0.9.7                 :  1.0.0 (OK)
setuptools >=49.6.0           :  63.4.1 (OK)
sphinx >=0.6.6                :  5.1.1 (OK)
spyder_kernels >=2.3.2;<2.4.0 :  2.3.2 (OK)
textdistance >=4.2.0          :  4.3.0 (OK)
three_merge >=0.1.1           :  0.1.1 (OK)
watchdog >=0.10.3             :  2.1.9 (OK)
zmq >=22.1.0                  :  23.2.0 (OK)

# Optional:
cython >=0.21                 :  0.29.32 (OK)
matplotlib >=3.0.0            :  None (NOK)
numpy >=1.7                   :  1.21.6 (OK)
pandas >=1.1.1                :  1.3.5 (OK)
scipy >=0.17.0                :  None (NOK)
sympy >=0.7.3                 :  None (NOK)

Environment
Environment
Package                       Version
----------------------------- -----------
-pyder                        5.3.2
alabaster                     0.7.12
altgraph                      0.17.2
arrow                         1.2.2
astroid                       2.11.7
atomicwrites                  1.4.1
attrs                         22.1.0
auto-py-to-exe                2.20.1
autopep8                      1.6.0
Babel                         2.10.3
backcall                      0.2.0
bcrypt                        3.2.2
beautifulsoup4                4.11.1
binaryornot                   0.4.4
black                         22.6.0
bleach                        5.0.1
bottle                        0.12.21
bottle-websocket              0.2.9
certifi                       2022.6.15
cffi                          1.15.1
chardet                       5.0.0
charset-normalizer            2.1.0
click                         8.1.3
cloudpickle                   2.1.0
colorama                      0.4.5
cookiecutter                  2.1.1
cryptography                  37.0.4
Cython                        0.29.32
DateTime                      4.5
debugpy                       1.6.2
decorator                     5.1.1
defusedxml                    0.7.1
diff-match-patch              20200713
dill                          0.3.5.1
docutils                      0.19
Eel                           0.14.0
entrypoints                   0.4
fastjsonschema                2.16.1
flake8                        4.0.1
future                        0.18.2
gevent                        21.12.0
gevent-websocket              0.10.1
greenlet                      1.1.2
idna                          3.3
imagesize                     1.4.1
importlib-metadata            4.12.0
importlib-resources           5.9.0
inflection                    0.5.1
intervaltree                  3.1.0
ipykernel                     6.15.1
ipython                       7.34.0
ipython-genutils              0.2.0
isort                         5.10.1
jedi                          0.18.1
jellyfish                     0.9.0
Jinja2                        3.1.2
jinja2-time                   0.2.0
jsonschema                    4.9.1
jupyter-client                7.3.4
jupyter-core                  4.11.1
jupyterlab-pygments           0.2.2
keyring                       23.7.0
langdetect                    1.0.9
lazy-object-proxy             1.7.1
MarkupSafe                    2.1.1
matplotlib-inline             0.1.3
mccabe                        0.6.1
mistune                       0.8.4
mypy-extensions               0.4.3
mysql-connector-python        8.0.29
nbclient                      0.6.6
nbconvert                     6.5.0
nbformat                      5.4.0
nest-asyncio                  1.5.5
numpy                         1.21.6
numpydoc                      1.4.0
opencv-python                 4.6.0.66
packaging                     21.3
pandas                        1.3.5
pandocfilters                 1.5.0
paramiko                      2.11.0
parso                         0.8.3
pathspec                      0.9.0
pefile                        2022.5.30
pexpect                       4.8.0
pickleshare                   0.7.5
Pillow                        9.2.0
pip                           20.1.1
pkgutil-resolve-name          1.3.10
platformdirs                  2.5.2
pluggy                        1.0.0
prompt-toolkit                3.0.30
psutil                        5.9.1
ptyprocess                    0.7.0
pycodestyle                   2.8.0
pycparser                     2.21
pydocstyle                    6.1.1
pyflakes                      2.4.0
Pygments                      2.12.0
pyinstaller                   5.1
pyinstaller-hooks-contrib     2022.7
pylint                        2.14.5
pyls-spyder                   0.4.0
PyNaCl                        1.5.0
pyparsing                     3.0.9
PyQt5                         5.15.7
PyQt5-Qt5                     5.15.2
PyQt5-sip                     12.11.0
PyQtWebEngine                 5.15.6
PyQtWebEngine-Qt5             5.15.2
pyrsistent                    0.18.1
pytesseract                   0.3.9
python-dateutil               2.8.2
python-lsp-black              1.2.1
python-lsp-jsonrpc            1.0.0
python-lsp-server             1.5.0
python-slugify                6.1.2
pytoolconfig                  1.2.2
pytz                          2022.1
pywin32                       304
pywin32-ctypes                0.2.0
PyYAML                        6.0
pyzmq                         23.2.0
QDarkStyle                    3.0.3
qstylizer                     0.2.1
QtAwesome                     1.1.1
qtconsole                     5.3.1
QtPy                          2.1.0
requests                      2.28.1
rope                          1.3.0
Rtree                         1.0.0
setuptools                    63.4.1
six                           1.16.0
snowballstemmer               2.2.0
sortedcontainers              2.4.0
soupsieve                     2.3.2.post1
Sphinx                        5.1.1
sphinxcontrib-applehelp       1.0.2
sphinxcontrib-devhelp         1.0.2
sphinxcontrib-htmlhelp        2.0.0
sphinxcontrib-jsmath          1.0.1
sphinxcontrib-qthelp          1.0.3
sphinxcontrib-serializinghtml 1.1.5
spyder                        5.3.2
spyder-kernels                2.3.2
tesseract                     0.1.3
text-unidecode                1.3
textdistance                  4.3.0
three-merge                   0.1.1
tinycss2                      1.1.1
tkcalendar                    1.6.1
toml                          0.10.2
tomli                         2.0.1
tomlkit                       0.11.1
tornado                       6.2
traitlets                     5.3.0
typed-ast                     1.5.4
typing-extensions             4.3.0
ujson                         5.4.0
urllib3                       1.26.11
watchdog                      2.1.9
wcwidth                       0.2.5
webencodings                  0.5.1
whatthepatch                  1.0.2
whichcraft                    0.6.1
wrapt                         1.14.1
xlrd                          2.0.1
XlsxWriter                    3.0.3
yapf                          0.32.0
zipp                          3.8.0
zope.event                    4.5.0
zope.interface                5.4.0

Hi @SanjaiKr thank you for the feedback! Could you run spyder with the debug-info flag and post here the generated logs? For that you can run from the cmd something like spyder --debug-info verbose.
Let us know!

There is no generated log this time, But it's the same error again

🤔 seems like the custom interpreter you are using is returning something strange as interpreter info (usually in the status bar you will only see something like Completions: custom). Could you run again Spyder with the following: spyder --debug-info verbose --debug-output file. Running with the debug-output should generated a spyder-debug.log file on the cmd current working directory.
I think the problem is in the way Spyder tries to get information from the interpreter (the logic is at spyder.utils.programs.get_interpreter_info) where we run the -V command with the path of the current interpreter but seems like when you install tesseract it changes somehow the output of running -V with the interpreter path. Could you try to check what is the path used with the get_interpreter_info function when the error happens:
https://github.com/spyder-ide/spyder/blob/1df174fb17bb3fe03c018310df2b6041a88fbd42/spyder/utils/programs.py#L1050-L1057
Let us know!

spyder-debug1.log
here,s the log file and how i am supposed to get the path that you are asking,  I don't know that

@SanjaiKr thanyou for the log file! To check the path you could add a print statement to the get_interpreter_info funtion that is in the file at c:\users\sanjay chakravarthy\appdata\local\programs\python\python37\lib\site-packages\spyder\utils.programs.py and generate again the log.
However, checking the .log file seems like the interpreter path being use is c:\\users\\sanjay chakravarthy\\appdata\\local\\programs\\python\\python37\\python.exe
What happens if you run from cmd c:\\users\\sanjay chakravarthy\\appdata\\local\\programs\\python\\python37\\python.exe -V? You get `Python 3.7.9 or something else?
Let us know!

@dalthviz, perhaps we could detect if the text that we get from python -V is in the form of Python x.x.x and if not fallback to not reporting the version.

Python 3.7.9
I'm getting this...
And i am unable to add a print statement in that file, If i did then the spyder not even starts...

@ccordoba12 @dalthviz
Did anything can solve this issue ?
The issue reporter only stops when the tesseract uninstalls, When it installs they started to apper again

@SanjaiKr a fix is being worked on at https://github.com/spyder-ide/spyder/pull/19082 If you want you can patch locally your Spyder installation to try the proposed changes. If those changes work let us know!

I did not understand. What is the solution for my problem ?

@SanjaiKr you will need to wait for Spyder 5.3.3 to be released (hopefully it will be available at the end of the month) and then you will need to update to that Spyder version since changes to Spyder source code were needed to prevent the error you are experiencing.
The relevant changes that will be included in Spyder 5.3.3 for your issue are visible at https://github.com/spyder-ide/spyder/pull/19082/files and https://github.com/spyder-ide/spyder/pull/19096/files (in case you want to check them and/or try to copy them manually to your current local Spyder installation)

authors: SanjaiKr ccordoba12 dalthviz