Will not work on windows 10

Empire Version
latest
OS Information (Linux flavor, Python version)
windows 10
Expected behavior and description of the error, including any actions taken immediately prior to the error. The more detail the better.
I cannot get the launcher to connect back to the listener.
When it's run on windows 10 the powershell launcher just exits
It works on windows 7
Screenshot of error, embedded text output, or Pastebin link to the error
Any additional information

The AMSI bypass included by default is currently detected by Defender
(doesn't work in 1803 anyways). Try setting SafeChecks to false when
generating the launcher. That should get you a working agent, but you may
have to do something else about AMSI before running some of the modules.
Powerview and anything that uses the reflective loader (like Mimikatz) will
probably get detected by AMSI.
Alternatively, start powershell with "-ver 2". Version 2 doesn't have AMSI,
so that should also get you a running agent.
On Sun, Sep 16, 2018 at 10:50 AM Merlyn Cousins<EMAIL_ADDRESS>wrote:

Empire Version
latest
OS Information (Linux flavor, Python version)
windows 10
Expected behavior and description of the error, including any actions
taken immediately prior to the error. The more detail the better.
I cannot get the launcher to connect back to the listener.
When it's run on windows 10 the powershell launcher just exits
It works on windows 7
Screenshot of error, embedded text output, or Pastebin link to the error Any
additional information
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/EmpireProject/Empire/issues/1232, or mute the thread
https://github.com/notifications/unsubscribe-auth/ACFwUDl-EpKM-N_ZHlTgMfyVsmRvPXBVks5ubmVKgaJpZM4Wq4nY
.

Interesting. Thank you. I have designed other powershell launchers which stage shellcode of my own design and it's not caught. Please explain to me why empire is being caught?

The Empire stager gets detected because of these commands specifically.
$Ref=[Ref].ASSEmBly.GetTYPe('System.Management.Automation.AmsiUtils');$ReF.GeTFIeLd('amsiInitFailed','NonPublic,Static')
This is from Matt Graeber's initial AMSI bypass, it's been used for for 2
years now by just about everyone, so it's no surprise there's a signature
for it. In 1803, the AmsiUtils object can't be easily accessed through
reflection, so the bypass doesn't work anyways.
On Sun, Sep 16, 2018 at 3:09 PM Merlyn Cousins<EMAIL_ADDRESS>wrote:

Interesting. Thank you. I have designed other powershell launchers which
stage shellcode of my own design and it's not caught. Please explain to me
why empire is being caught?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/EmpireProject/Empire/issues/1232#issuecomment-421815107,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACFwUCIzOs-lkCxf7b92PVmdNIe36HGIks5ubqHlgaJpZM4Wq4nY
.

This trick was working until a few days ago. Now it's detected even when SafeChecks is false.
If the detection is overridden and the file is allowed to run, stage 1 stager is sent, and then blocked.
The process ends with:

[*] Sending POWERSHELL stager (stage 1) to ..

If real time virus protection is turned off completely, it works as before.
The -ver 2 option doesn't seem to work at all.
Any further ideas?

Yes, I am having the same problem.
My costume made shellcode works fine.

Could you please share your method for generating said shellcode?


How to create an Angular 6 project with latest version of generator-ngx-rocket

I'm submitting a...

[x] Documentation issue or request

Current behavior
Currently when i try to create a new Angular project with ngx-rokcet it creates an project with Angular 7.
Expected behavior
But i want to create Angular 6 project with latest ngx-rocket library.

That scenario is not supported. ngx-rocket only supports one target Angular version at a time (currently 7, but will soon be 8). We could document this further of course, but in fact it is already written in the project's very description, which currently reads:

Extensible Angular 7+ enterprise-grade project generator

This information is also found in the npm description (in package.json).
If you want an older Angular version you should use an older version of ngx-rocket (I think 5.2.x was the last ngx-rocket version that shipped with Angular 6).

I solved this problem by remaining versions in Package.json file and then run this command in cmd in the projec directory.
npm install


"Missing comment" when using absolute proto package.

Message:
package foo.bar;

message MyMessage {
  // Useful comment.
  .bar.MessageFromAnotherPackage submessage = 1;
}

This gets me a "Missing comment over submessage" warning. If I remove the . at the start of .bar.MessageFromAnotherPackage then the warning goes away.

Fascinating. I will look into this.

I was able to verify this issue. It is an issue in the proto parsing library we used; I filed an issue there. (I may also look into fixing it.)

@jhump fixed the underlying issue in jhump/protoreflect#294. As soon as Renovate gives me an update PR, I will merge it and this will be fixed.

@lukesneeringer, we need to sync the protoreflect library into google3 as well.

@mingzhi protoreflect has a 1.6.0 release; we should be able to sync now.

Already done (both protoreflect and api-linter). Thanks!


add system dependence for install crictl document

exec make install-deps command On Ubuntu system 20.04. I have a dependency problem。so I hope to record.

Could you please sign off your commits (try git commit -s) in order to pass CI checks?
https://github.com/containerd/project/blob/master/CONTRIBUTING.md#sign-your-work


[BUG] getSessionId() from the context is laways null on the first request attempt.

Description/Screenshot
In a SPA project such as Angular the first time you try to access the session id it's null until you navigate to another page even if enableAutoRouteTracking is set to true.
Steps to Reproduce
Expected behavior
Session Id should be available when a user land on the app. Would it be a cookie lifecycle problem ?
Additional context
For example the user Id is always available even for the first navigation request while the session Id is not yet set.
ie -> 1) is when you land on the website for the first time. Then you navigate to page 2 etc...

Url: /           | SessionId: null                                    | Authenticated<EMAIL_ADDRESS>| UserId zKVDYkaDyLy83WoM44O4MD
Url: /page1 | SessionId: 6rHOEilijJV/P0vKB8md6Q | Authenticated<EMAIL_ADDRESS>| UserId zKVDYkaDyLy83WoM44O4MD
Url: /page2 | SessionId: 6rHOEilijJV/P0vKB8md6Q | Authenticated<EMAIL_ADDRESS>| UserId zKVDYkaDyLy83WoM44O4MD

Seems that the problem come from angular component lifecycle.


ISO 8601 format is HH:MM:SS.mmmmmm or HH:MM:SS if milliseconds are zero

Dear @gkopff ,
I stumbled across a problem in which my server (python django-rest) serializes a timedelta in ISO8601, using the following formats:
HH:MM:SS.mmmmmm or HH:MM:SS if milliseconds are zero (which is my case).
Initially it would make sense just to remove the milliseconds in the PATTERN string; however, I came up with a better solution that works for both scenarios (with or without milliseconds) using joda's own ISO Formatters.
Please review it, as it would undoubtedly benefit other Python/Android developers.
Have a good one, cheers.
Thiago Pagonha.

Seams no one is checking this repo

@thiagopa @CyborTronik It seems github didn't notify me of this PR - I've only just seen it now.  Apologies about that.

Thanks


Create Unpausable

Unpausable has a more limited functionality than Pausable smart contract in the sense that it starts paused and leaves room for unpausing the operation once later on.

I like the idea. Can you make Pausable inherit from Unpausable and add tests? (should be the same as in Pausable) (a subset actually)

@maraoz , I updated the family of pauseable smart contracts with the following contracts for the contracts/lifecycle folder:

PauseInfrastructure
Unpausable which is a PauseInfrastructure and allows a contract which starts naturally paused to be unpaused once.
Pausable which is a PauseInfrastructure and allows a contract which starts naturally unpaused to be paused once.
PauseUnpauseAble which is a PauseInfrastructure and allows a contract to pause and unpause at will. The initial paused state is set throught the constructor parameter ´_paused´.

Additionally contracts/token folder now has:

PausableToken which is Pausable and StandardToken
UnpausableToken which is Unpausable and StandardToken
PauseUnpauseAbleToken which is PauseUnpauseAble and StandardToken

For testing the smart contracts above, test folder now has also:

Pausable.js to test Pausable.sol
Unpausable.js to test Unpausable.sol
PauseUnpauseAble.js to test PauseUnpauseAble.sol
PausableToken.js to test PausableToken.sol
UnpausableToken.js to test UnpausableToken.sol
PauseUnpauseAbleToken.js to test PauseUnpausableToken.sol

And test hepers in folder test/helpers

PausableMock.sol to help test Pausable.js
UnpausableMock.sol to help test Unpausable.js
PauseUnpauseAbleMock.sol to help test PauseUnpauseAble.js
PausableTokenMock.sol to help test PausableToken.js
UnpausableTokenMock.sol to help test UnpausableToken.js
PauseUnpauseAbleTokenMock.sol to help test PauseUnpausableToken.js

NACK. I find this unnecessarily complex. The deeper and more complex the inheritance hierarchies, the harder it is to follow and audit the execution flow.
Also, and very importantly, now Pausable is a very dangerous contract to inherit from, because it could lock things up forever, with no possibility to unpause; while the rather awkwardly named PauseUnpauseAble is usually what you will want to use.

Agreed. I wouldn't change the semantics of Pausable as it exists now. And the name PauseUnpauseAble is not very nice. The rest looks good to me.

NACK. I find this unnecessarily complex.

@federicobond , it is less complex actually if you take a look at Pausable and Unpausable contracts now they implement a smaller functionality than the previous Pausable did in the past in a cleaner way. That means more performance and less cost for each specific case, isn't that what you should be looking for?

The deeper and more complex the inheritance hierarchies, the harder it is to follow and audit the execution flow.

I totally disagree with you. The framework organic growth will naturally increase complexity and inheritance hierarchies, so you should rather focus on robust engineering than fearing necessary complexity growth. There are several strategies to manage complexity like UML class diagrams for the structure, code generators and so on. Still IDE's are not intuitivelly showing the relationship among contracts. But sooner or later they will represent quite well. How to make composition and aggregation associations, instantiation and statemachine diagrams for a smart contract? Even proxy contracts shouldn't be hard to debug and implement. In this regard the ecossystem needs to improve right away, and it is.

Also, and very importantly, now Pausable is a very dangerous contract to inherit from, because it could lock things up forever, with no possibility to unpause; while the rather awkwardly named PauseUnpauseAble is usually what you will want to use.

OpenZeppelin is a library that should give programmers solutions to whatever they are looking for to implement. I'm pretty sure there are use cases where the intended functionality is to have the possiblity to just pause forever a token for example or like unpausable does to just unpause once. What you have described is user's mistake and OpenZeppelin was never responsible for that.

awkwardly named PauseUnpauseAble.

If the name is the problem, suggesting another beautiful name makes the job, doesn't it? I mean software structures regardless of the name represent the most important technological feature. Labeling each contract accordingly is advisable for readability purposes.

How about relabeling?

Pausable to PausableOnce
Unpausable to UnpausableOnce
PauseUnpauseAble to Pausable

If it comes down to names, perhaps a better alternative would be Startable, Stoppable and Pausable.

@federicobond , looks great!

Agreed in that OpenZeppelin's contracts shouldn't leave much space for user error. The PausableOnce/Stoppable contract (and it's token versions), where one cannot unpause/resume the contract, doesn't seem very useful and can be confusing.
I'd remove it from the PR

Changes Unknown when pulling 02011c4399b1492d710fdda204f1b35011fdb193 on ProphetDaniel:patch-2 into ** on OpenZeppelin:master**.

Later on today I will remove Stoppable family of contracts and testers.

Changes Unknown when pulling 9cd56fb9b5844c6bc673db63905b72dabba41610 on ProphetDaniel:patch-2 into ** on OpenZeppelin:master**.

Please rebase

can you rebase? The commit history in this PR is very messy

Rebasing several times resulted in the current mess. A clean option would be to clone again and create a new PR.

I appreciated the thoughts on complexity and growth, and I agree with putting the focus on robust engineering. Unfortunately there is no way to pause all of the functionality of a contract without the developers manually placing the correct modifiers on every function, so I feel that the the complexity introduced in this PR is not worth the returns.
Apologies for the delay and thanks @ProphetDaniel!


feat: add docs for the new iOS 17+ privacy requirements

Details for the new iOS 17+ privacy requirements. More changes here.

no, I've only checked the text :smile: didn't do any tests with an app. I can test a Testflight build tomorrow to see if I get the warnings

just pushed a 12.3.0 app (without any changes or privacy file) to the testflight and I don't get the warnings :shrug: So I can't test it

Same here currently with our main app that reproduced it last week. Maybe Apple only sends email for some devs so far to reduce noise. We can keep it open until it get's more concrete, as Titanium devs can already place the file to be sure.

as there are more people asking for this now: should we merge the docs so I can link them to the article instead of pointing to this PR all the time?

Thanks :+1:
Looks like it doesn't like the link to the file: https://titaniumsdk.com/guide/Titanium_SDK/Titanium_SDK_How-tos/PrivacyInfo.xcprivacy
Should we add inlince code to display the file as a workaround?


feat: setup esbuild

#86bx306x8

Task linked: CU-86bx306x8 Story #4.1 - Users want to build / (build:watch) their code - 3pts


Dante Individual

Dante A - RGB adjuster
What I added
Revert to original

After our group met with Mr Mort he discussed with me that the ability to change the RGB of the photo is cool, but there should be a way to reset teh image back to normal. I originally thought of maybe adding a marker on where the image's values started but ultimately decided on adding a simple button titled reset image colors. When the user first enters in the image the initial values are stored the button simply calls for those original values and implements them onto the photo.

Scaling of photo

After Sergi graded our group's work, one of his suggestions was that the image should be scaled to fix the window since it is annoying to have to move up and down. To my best ability,attempted to scale the image down so that it only takes up 80 percent of the length and width. Looking back I probably couldve made it smaller since teh image is still pretty big.

Adding the binary and hex values to color wheel

One of Mr morts main points was that the code has to be able to teach teh reader something about binary. I think my code helps the learner see how binary is used in colors which could be seen by the sliders. However, the color wheels I had were the most visual, but they had no information attached to them. I initially tried to make it so the user's click appears on the color wheel, but I was unable to do it. So I finished by just displaying the binary and hex values of where the user last clicked alongside the wheel.

Key commits
I had two main key commits, the commit for the scaling of teh image and the commit for the binary and hex.
Scaling and revert
Binary and hex values
Video
issues
analytic

Individual Review Tanujsai N grading Dante A

[x] Individual should show that they were key contributor and example to team.  This includes their participation in ideas, plans, creating individual issues, providing code commits to project, crossover grading participation, being on task and positive example in the classroom.

Individuals Video, Issue(s), Commits(s)

[x] Video in CPT caption style , includes Web demo of key contribution to project, 1 minute
[x] Issue(s) that show plans/progress to team objectives
[x] Highlights of key commit(s) in Issues, summarizes code contributions
[x] Review GitHub analytics for key commits in each weeks during the project, shows consistent participation for 3 weeks

Per check.
0.55 not attempted/no check
0.7 attempted, incoomplete, but some runtime
0.8 mastery and runtime
0.9 above and beyond.
Score:
.87/.9
Freeform comment.
Provide positives and growth summary.
Justify or comment on final score.
Be sure to provide extra details on anything below 0.7 average or above 0.8.
Grade explain:
It was evident that Dante did thorough The video was very thorough in the explanation of how the feature worked. He went through the functionality of each part of the feature and how to use it. This was thorough with issues to back their plans and what they've done. Their plans kept them on track and allowed them to finish everything in a timely manner. there was no rushing of work showed in their analytics due to their organized plan. Dante's key commits show how much he worked and contributed to the team. Their github analytics show an even divide of work throughout the team as they worked together.


Pi4Micronaut-44

Resolves #44. Added controller and helper for 4-digit 7-segment display that utilizes Seyun's in-progress implementation of the single-digit display.
Controller has API endpoint for displaying a number up to 4 digits in length. The helper uses the work-in-progress SevenSegmentDisolayHelper @Ed0827 is writing in another PR in order to avoid reusing code.

Additionally, I noticed that you used the SevenSegmentDisplayHelper class, which isn’t currently available in the package (I understand Seyun is working on it). Without ... the missing class, I can’t approve the PR just yet. Once these changes are addressed, we’ll be in a good place to move forward

How should we proceed with fixing the issue of the missing class? Would we have to ensure that Seyun's PR is merged first?


README realted to bypass indentline or whitespace plugins

@yeahnoob
Can I have your  email address or wechat, I need your help and want to talk with you.  my email is<EMAIL_ADDRESS>my wechat is satanson_


Propagate changes to later steps.

4-auth has some issues we need to think about, so postponing this pull request...


Mitigating Concurrency Issues

Hi,
I was wondering what the standard approach is to Mitigate possible Concurrency issues when using Redisson as a spring data source.
I am working on an application that gets information from a source application and then layers updated over the top before delivering the updated information to the client.
The updates in this case are built for several sources, each one has its own queue.
When a new message is placed on any given queue my app reads the message from the queue, and attempts to create or update an updateObject in my redis cache.
My problem stems form the fact that messages are constantly being placed on these queues and updates to the updateObject are likely to come in quick succession.
Im concerned that this will lead to concurrent read write issues:
existing updateObject[id:1, foo:false, bar:false]
msg 1[foo:true]---> get existing updateObject[id:1, foo:false, bar:false]
msg2[bar:true]--> get existing updateObject[id:1, foo:false, bar:false]
msg 1[foo:true]---> update existing updateObject[id:1, foo:true, bar:false]
msg2[bar:true]--> get existing updateObject[id:1, foo:false, bar:true]
resulting updateObject[id:1, foo:false, bar:true]
I have attempted to solve this using @Transactional and the RedissonTransactionManager but it doesn't seem to be halting the second messages update while the first message is still updating.
Any advice would be really appreciated,
Thank you

Hi @mrniko,
Thanks for getting back to me.
The only locking that I can see is during the committing of the transaction, looks like the operations are bundled into a batch update and executed within a semaphore.acquire
Is that what you mean ?
Thanks

Hi @CToner3223
Are you talking about RBatch or RTransaction object?

I don't believe this form of locking is enough to solve my issue.
I need to the whole transaction to be isolated in a lock so that other operations don't read from redisson while the current one is updating.
message 1 gets picked (application1)  <-[id: 123, foo: true, bar: false]
-TransactionStarted (application1) -
getCurrentState of id 123 (application1)  <-[id: 123, foo: false, bar: false]
message 2 gets picked (application2)  <-[id: 123, foo: false, bar: true]
-TransactionStarted (application2) -
getCurrentState of id 123 (application2)  <-[id: 123, foo: false, bar: false]
merge message 1 with currentState (application1)  <-[id: 123, foo: true, bar: false]
merge message 2 with currentState (application2)  <-[id: 123, foo: false, bar: true]
[Lock acquired by name of object] (application1) <<<
Save <-[id: 123, foo: true, bar: false] (application1)
-TransactionEnded (application1) -
commit Transaction (application1)
[Lock released] (application1)
[Lock acquired by name of object] (application2) <<<
Save <-[id: 123, foo: true, bar: false] (application2)
-TransactionEnded (application2) -
commit Transaction (application2)
[Lock released] (application2)
result : object 123 = [id: 123, foo: false, bar: true]
but logically it should be : [id: 123, foo: true, bar: true]
Does that make sense ?
Thanks again


Issue 10658 - Cannot merge template overload set by using alias declaration

http://d.puremagic.com/issues/show_bug.cgi?id=10658
This relies on the refactoring PR #2401.
Add new OverDeclaration for template overload set merging.

This pull request introduced a regression:
https://issues.dlang.org/show_bug.cgi?id=14554


We need to create a FAQ for faculty and developers

Ana had many questions at the deans form that we should consider for this
Waiver: If an author gets a waiver then any other author on the paper within PSU also has been given that waiver (confirm this with Eric)
How frequently do we import OA content and refresh data (Open Access Button, Digital Measures, ETD, Pure, Web Of Science)
Grant data: grant data that is gotten via NSF links to the author and provides a lot of information about the grant because NSF has a lot of grant information. Grant data that is obtained via WoS only has the grant number, but if that grant number is a NSF grant number then we can link to more of the information that we obtained in NSF
PDF that West Arete created and attached
How is Pure data imported: We hit the API, download JSON files and then read those JSON files so our imported code doesn't make requests to the API but using data downloaded from the API.
How do we import WoS data
API keys and how we manage them - https://basecamp.com/1759334/projects/15421427/messages/87777180

Aha! Link: https://penn-state-university-libraries.aha.io/features/MDDB-29

What happens if I log into Metadata Database and I don't have a profile in the Pure?
Most authentication-protected actions in the app will just redirect a WebAccess-authenticated user back to the MDDB home page if the user doesn't have a record in MDDB at all. However, at some point previously, we decided that any such user should be redirected to https://openaccess.psu.edu/waiver-form/ whenever they try to access the profile management interface (including the open access waiver forms). So they'll be directed to fill out the form on the PSU Open Access website entirely outside of the MDDB app.

Including details such as: where we get the information from, how it's updated, etc

What is the Process for Linking ORCID to the Metadata Database:

Link Your Penn State Access Account to ORCID iD (https://orcid.identity.psu.edu/) (if you don't already have an ORCID iD you can still do this more details: https://guides.libraries.psu.edu/c.php?g=582453)
*2. Wait an hour for the MDDB to update with your ORCID
*3. Authorize the MDDB to update your ORCID Account
Push desired records to ORCID

-- once we have ability to share access tokens with central IT then we can quickly query those tokens and use the authZ that were created in step one and wont require an additional authZ.

The contact info comes from Activity Insight. Your record in particular hasn't been updated recently because it has been edited in the MDDB admin interface.
On your user record there's a timestamp named "Updated by user at" which is currently set to "July 10, 2019 20:51". That's the last time that an edit was made to your data via the admin interface. The presence of this timestamp would have prevented new data imports from updating your user data ever since it was originally set. If we removed the value for that timestamp and ran another Activity Insight import, you user data would be updated, but it would overwrite any changes that had been made manually.

This would be great to do, especially FAQs around how the importers work.

Perhaps we could consider creating a public page that would embed a LibAnswers widget, similar to this page on the copyright site.


Bug in all tanks

In the 4 tanks (basic, advanced, elite, ultimate) objects are duplicated very simply.
See the video for more information.
https://youtu.be/XPp6wN9AZLE

Minecraft version? Mekanism version? Does it work in singleplayer?

In addition, can you try to eat or use the apples and show that they are real? It might be simply a client-side UI bug.

@ThatGamerBlue Obviously I use one of the most recent versions, but that's your job, so start investigating, or do you also want me to tell you which line of code you should change? ...

Well yes, if you aren't going to provide the necessary information then it does sound like you need to tell us what line of code to change.
Also this is actually nobody's job, and your demands will fall on deaf ears.

Unable to reproduce with only Mekanism 1.10.2-<IP_ADDRESS>9 and Forge <IP_ADDRESS>1.  I took another look at the video and saw that it was in Minecraft 1.7.10 (I hope).  Again, unable to reproduce with Mek 1.7.10-<IP_ADDRESS>1 and Forge <IP_ADDRESS>4.  Most likely a mod interaction or outdated Mekanism.  No way to really test without poking at random which no one is willing to do; especially after how idiotic the "that's your job" statement was.
Unless @HeberonYT wants to contribute to a community that only exists because of people freely contributing their spare time, this topic isn't going anywhere.

@VT-14 , Yes this is for 1.7.10 and I know that it is EOL. Knowing that I would still love a fix it is at all possible.
Versions:

Minecraft 1.7.10
Mekanism-1.7.10-<IP_ADDRESS>1
MekanismGenerators-1.7.10-<IP_ADDRESS>1
MekanismTools-1.7.10-<IP_ADDRESS>1
forge-<IP_ADDRESS>4

How to reproduce:

Place tank in world
Empty Inventory
Place any item in the Top/Right spot of your inventory. It will work in other spots, but it is random if it works
Shift Right Click on the item
Profit

Also, Duplicate of https://github.com/aidancbrady/Mekanism/issues/3964


Adding classes for Token Statistics

Description
Please add an informative description that covers that changes made by the pull request and link all relevant issues.
If an SDK is being regenerated based on a new swagger spec, a link to the pull request containing these swagger spec changes has been included above.
All SDK Contribution checklist:

[ ] The pull request does not introduce [breaking changes]
[ ] CHANGELOG is updated for new features, bug fixes or other significant changes.
[ ] I have read the contribution guidelines.

General Guidelines and Best Practices

[ ] Title of the pull request is clear and informative.
[ ] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[ ] Pull request includes test coverage for the included changes.

API change check
APIView has identified API level changes in this PR and created following API reviews.
azure-ai-ml

Check the Build/Analyze PR gate failure. My PR for the pylint/black fixes should be in by EOD 4/26, but this PR has introduced failures for MyPy which is Python's type checker, so you'll need to address those.


Incorrect models listed in AWS Bedrock outside US

Which API Provider are you using?
AWS Bedrock
Which Model are you using?
anthropic.claude-3-sonnet-20240229-v1:0
What happened?
After selecting the region of AWS Bedrock, the list of models is not updated and displays models available in the us-west-2 region instead.
Regions such as Australia (ap-southeast-2) are still stuck running mid-low end models that are coming up to a year old, if possible we'd select to use us-west-2 but many of us aren't able to due to data sovereignty laws.

Steps to reproduce

Set region to ap-southeast-2 (or any region that doesn't have the models available in us-west-2)
Expect to see the list of available models in-region / account (e.g. anthropic.claude-3-sonnet-20240229-v1:0)
Instead see models available in us-west-2

Relevant API REQUEST output
No response
Additional context
Not pictured: Many months of complaining to AWS about the lack of investment in Bedrock in Australia

Regions such as Australia (ap-southeast-2) are still stuck running mid-low end models that are coming up to a year old

That is really so tragic, I am so sorry 😅


MAL-Stremio Addon

Addon Manifest URL
https://mal-stremio.vercel.app/manifest.json
Addon Description
Addon for MyAnimeList users' watchlists and content tracking.
Users can view their watchlists from within Stremio, and content watched on Stremio will be marked/updated on MyAnimeList (If it's already in their watchlist).
For more details: https://github.com/SageTendo/mal-stremio-addon
Language of Content
None
Choose Labels

[X] anime
[ ] asian drama
[ ] bollywood
[ ] cartoons
[ ] debrid support
[ ] http streams
[ ] live tv
[ ] metadata
[X] misc
[ ] movies
[ ] music
[ ] nsfw
[ ] podcasts
[ ] radios
[ ] subtitles
[ ] torrents
[ ] tv shows
[ ] video games

Addon Description
Addon for MyAnimeList users' watchlists and content tracking.
Users can view their watchlists from within Stremio, and content watched on Stremio will be marked/updated on MyAnimeList (If it's already in their watchlist).
For more details: https://github.com/SageTendo/mal-stremio-addon

Thank you!

Is there a way to make this app track the anime you watch from a catalog like cyberflix and TMBD then update your MAL list? The Animeo app can do it for its Anilist. But would rather have MAL instead.

Not at the moment, I'll look into a database that has ID for both TMDB, Cyberflix and MAL so I can implement this.

Is there a way to make this app track the anime you watch from a catalog like cyberflix and TMBD then update your MAL list? The Animeo app can do it for its Anilist. But would rather have MAL instead.

Not at the moment, I'll look into a database that has ID for both TMDB, Cyberflix and MAL so I can implement this.

Is there a way to make this app track the anime you watch from a catalog like cyberflix and TMBD then update your MAL list? The Animeo app can do it for its Anilist. But would rather have MAL instead.

Not at the moment, I'll look into a database that has ID for both TMDB, Cyberflix and MAL so I can implement this.

As you know Trackt can save and track anything we watch on stremio in their database. Every episode we watch from any community addon catalog.


NotSerializableException in rule-based model using supported property types

When using the supported property types outlined in Managed, a NotSerializableException is generated.
Expected Behavior
When using the supported property types, the generated implementation of a managed type should not generate an exception.
Current Behavior
Using a supported property type in a managed type results in a java.io.NotSerializableException
Context
Create a custom plugin by extending the DSL using a rule-based model
Steps to Reproduce (for bugs)
Create a managed type using supported types
@Managed
interface Repository {
    String getId()
    void setId(String id)

    String getUrl()
    void setUrl(String url)
}

Create a custom task that attempts to print the information AND include the output directory
class SimpleTask
    extends DefaultTask {

    @Input
    Repository repository

    @OutputDirectory
    File outputDirectory = project.buildDir

    @TaskAction
    def display() {
        println "Repository:  ${repository.url}"
    }
}

In the model define a value for the Repository and a simple task (repository is defined as a @Model in the plugin)
model {
    repository {
        id = 'identifier'
        url = 'http://...'
    }

    tasks {
        simple(SimpleTask) {
            repository = $.repository
        }
    }
}

The following error is reported when attempting to perform the simple task
FAILURE: Build failed with an exception.

* What went wrong:
Unable to store input properties for task ':simple'. Property 'repository' with value 'Repository 'repository'' cannot be serialized.
> java.io.NotSerializableException: ....Repository$NodeView

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 2.692 secs

Your Environment

Build scan URL: https://gradle.com/s/vucboufht3em4

I should mention that if the outputDirectory (java.io.File) is removed from SimpleTask, the task succeeds.


Error while comparing

When i try to compare the images.this is the error i get
Fatal error: Uncaught Exception: Invalid argument for Color::fromInt. Must be an integer between 0 and 16777215 in C:\xampp\htdocs\l4l\ImageCompare\src\color.php:240 Stack trace: #0 C:\xampp\htdocs\l4l\ImageCompare\src\image.php(183): Color::fromInt(2130706432) #1 C:\xampp\htdocs\l4l\ImageCompare\src\image.php(147): Image->colorat(0, 0) #2 C:\xampp\htdocs\l4l\ImageCompare\test.php(13): Image->subtract(Object(Image), 15) #3 {main} thrown in C:\xampp\htdocs\l4l\ImageCompare\src\color.php on line 240

Are you comparing png image files? My first shot is to assume RGBA color as error source, since this was not on my mind during the decelopemt.

This issue should be fixed now.


Use OMIM terms as primary label and Orphanet labels should be synonyms

per Monarch huddle 05/11/21
Use OMIM and OMIMPS terms as primary label

We need to do discuss this a bit during our meeting:
https://docs.google.com/spreadsheets/d/1um9UZ9L79tFZseY0me5MQqKzqaVObsuyk_GV9poqBr0/edit#gid=0

@nicolevasilevsky to do:
replace all these labels with the OMIM names in the OBO file
make the current labels exact synonyms

Action items:

[ ] @nicolevasilevsky to write action items
[ ] @nicolevasilevsky to add "MONDO_PREFERRED" synonym type, similar to clingen preferred. Have that link to a document with our naming rules using rdfs:seeAlso. (Pattern based rules, other rules, like OMIM over Orphanet, otherwise uncategorised mendelian disease, we could document the naming rule as a description rather than formal pattern.)
[ ] @nicolevasilevsky when all that is done, assign ticket to @joeflack4
[ ] @joeflack4 to write QC check to ensure that exact mondo_preferred annotated should always equal label

We need to prioritize the OMIM slurp.
Similar to the clingen_preferred label, we need to add an OMIM preferred tag to the synonyms that match the OMIM primary label.
Then we can update the labels to use the OMIM preferred labels.
Select all the exact synonyms that are OMIM preferred and then replace the labels if they don't match.


Wrapping MaterialUI components

Really like the ideas behind Concur, and I'd like to experiment with some predefined component library! I see that the semantic wrapper is ongoing work/stalled. Any idea how difficult it would be to wrap an existing PureScript library like React MUI or React Material UI instead of creating bindings to Semantic UI from scratch?

The Semantic UI Wrapper uses the old Concur API and is not really usable anymore. I have archived that repo now. The new API actually makes it really simple to work with external components in Concur so the amount of work required to roll your own is significanlty smaller.
Adding new bindings for MUI based on the existing purescript library seems like a good idea! I will explore that.

@ajnsit Hi, I'm intrested in how embedding external components in concur will look like. Is there any sample how to work with external components?

The new API actually makes it really simple to work with external components in Concur so the amount of work required to roll your own is significanlty smaller.

@kamoii Usually all you would require to wrap an external component is to import it as a ReactClass, and then wrapping it with one of the el functions.
For example, let's say you want to wrap the Button component provided by the material-ui library.
Step 1: First write an FFI module that exposes the ReactClass component -
// Button.js
exports.classButton =  require('@material-ui/core/Button').default

If you are using the Purescript React MUI bindings, then you can simply import the class component -
import MaterialUI.Button (classButton)

An aside: The MUI bindings also provide Props type definitions for components, but we don't use them. This is because I am yet to figure out a nice API for typesafe props for components. By "typesafe", I mean ensuring at compile time that you are not passing a prop to a button that is not a part of the allowed set of props for buttons. In practice, I have found that it's not very useful since lots of react props can be used for a large number of components, and it would be a lot of work to map them properly.
Step 2: Then wrap up the imported ReactClass into a widget to make it usable within Concur -
import Concur.React.DOM (El, el')
import React (unsafeCreateElement)
import React.DOM.Props (unsafeFromPropsArray)

button :: El
button = el' (unsafeCreateElement classButton <<< unsafeFromPropsArray)

(Ignore the unsafe functions. That's basically the cost of not having typesafe props. It's on my todo list).
Step 3: Now you can use button normally within Concur. For example -
import Concur.React.DOM as D
import Concur.React.Props as P

helloButton = button [P.onClick] [D.text "Hello World!"]

Note that you can mix in the default widgets and props with the MUI ones.

@ajnsit Thank you for your detailed explanation :+1:
I will try it.

I started a new project for MUI bindings here - https://github.com/ajnsit/purescript-concur-react-mui. To try run -
npm install
cd examples
npx spago build
npx parcel index.html


Not working?

I am 90% sure this is my fault, but i don't know what to do...
https://paste.ee/p/b1xCp (latest.log)
I copied the skin file from the tutorial, and uploaded it to minecraft.net.
Nothing. No ears....
(modlist is inside latestlog)

Any help? (sorry for bothering you)

Does it work without OptiFine?


Ayu Mirage / Light screenshots

Added screenshots for ayu mirage and light

I’ve always liked the Ayu themes. Are you going to do the Dark one for the complete set of three? I generally think mirage is better than dark as it’s less contrasty. I hope to see this merged soon.

@pkazmier see #499 for current status =)


Seed API service with example data

Motivation
This app communicate with the ROCC API service to get list/create/delete challenges, organization and other objects. During the development of the app, we need the API service to contain data so that we can 1) test that the models and services provided by the library rocc-client-angular work and 2) visualize the data in the web client. Using mock data local to the app enables 2) but not 1).
Discussion
The idea is to perform the following action when the app starts (and restart if the following operation does not take too much time) using the services provided by the library rocc-client-angular for the different types of objects.

Delete all the data in the API service
Seed the API service with example data

This approach was implemented in the project SageBio Collaboration Portal. Note that the solution was implemented at the level of the API service and not the web client.

When the API service starts, this line is executed if the DB needs to be seeded.
The file seed.js takes care of emptying the DB and seeding it with new data. Note that these operation are executed using the methods provided by the DB models (e.g. Article.find({})) and not using API calls.
The folder seeds contains one folder per "seed profile". The profile "default" was created to seed the DB with the minimum objects required for the app to work. The folder "development" is where we defined example objects so that we can visualize them in the app during development.

For the ROCC app, one question is whether we want to populate the objects from the app or from the API service itself. If the objects to populate are specific to the app, then it makes sense to populate them from the app. For example, the app developer may want to try with a challenge object that has a long title to see if it does not break the app. But local mock data are maybe more suitable for this.
It's worth noting that the app uses live reload to reload whenever we update a file. If seeding from the app takes time, we don't want to seed the API service each time the app reloads. Ideally, the seeding of the API service should only occur if the seed data have changed. One way could be to create an md5 string for the seed data and cache it locally (e.g. in a file), then at the next reload we compare the live md5 with the md5 present in the file. If the two values are different, then we seed the API service, otherwise it's relatively safe to assume that the API service already contains the data we want.
Writing function to seed data from the app is also useful for integration and e2e tests, especially to test that the services provided by the library rocc-client-angular work and are well integrated into the app.
Note that seeding from the API service itself has benefits too. For example, we would not have to worry that the app would spend time seeding the API service each time the app restart during development. Also, the seeds could be useful to test other clients, for example the library client for Python. But here again, seeding from the client itself (e.g. Python client) is a good way to test that the client works as intended.
Tasks
Let's try to seed the API service from the app.

[ ] Review and understand how the seed works in the SageBio Collaboration Portal see above
[ ] In the app code, identify the best place to run the seed code
[ ] Implement the seed code
[ ] If seeding the API service from the app takes too much time (1-2 seconds), consider implementing a caching mechanism so that the app does not seed the API service if the seeds data have not changed (see suggestion above regarding the use of an md5). A simpler solution may be to run the seed only when the app starts, and so if the developer modified the seed data, then we expect him/her stop and restart the app. This approach would makes sense if the seeds data are not changed too frequently, which may be the case. We could start with this approach and if we want a smarter system, then we can use caching.

@rrchai Let me know if anything is unclear. It would be great if this PR could be completed and merged by our next Monday meeting. We can touch base on Wednesday if you have any questions.


Use Bundler for dependencies; add Gemfile and update README

The installation process fails for users who don't have the rack and thin gems installed. This PR should fix that.

Awesome! Thanks!


Abort a response stream immediately when a client aborts the stream

Motivation:
When the server responds infinite streaming data, the client can aborts the stream at any time. If it does, the stream should be aborted immediately for the both side of the server and the client, but for now the stream does not be aborted until the request timeout is occurred.
Modifications:

Client-side:

Call HttpResponseWrapper#onSubscriptionCancelled instead of #close when the subscription is cancelled. Calling #close with CancelledSubscriptionException raises IllegalArgumentException which is unexpected for while cancelling subscription.

Server-side:

Http2RequestDecoder aborts the response stream when a RST_STREAM frame is received from the client. Before that, it closed the request with an Http2Exception, but the exception did not be propagated into the response stream. So the response stream could be completed only if the request timeout was occurred.

Result:

The response stream can be aborted immediately for both side of the server and the client.

The following test is failed by this change. Let me find out the cause.
com.linecorp.armeria.server.grpc.GrpcServiceServerTest > clientSocketClosedBeforeHalfCloseHttp2 FAILED
    java.lang.AssertionError:
    Expecting actual not to be null
        at com.linecorp.armeria.server.grpc.GrpcServiceServerTest.checkRequestLog(GrpcServiceServerTest.java:789)
        at com.linecorp.armeria.server.grpc.GrpcServiceServerTest.clientSocketClosedBeforeHalfClose(GrpcServiceServerTest.java:569)
        at com.linecorp.armeria.server.grpc.GrpcServiceServerTest.clientSocketClosedBeforeHalfCloseHttp2(GrpcServiceServerTest.java:534)

Test failure:
com.linecorp.armeria.server.HttpServerAbortingInfiniteStreamTest > shouldCancelInfiniteStreamImmediately[0: protocol=h1c] FAILED
    org.awaitility.core.ConditionTimeoutException: org.awaitility.core.ConditionFactory.untilAtomic Callable expected (<true> or <true>) but was <false> within 3 seconds.
        at org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:145)
        at org.awaitility.core.AbstractHamcrestCondition.await(AbstractHamcrestCondition.java:89)
        at org.awaitility.core.ConditionFactory.until(ConditionFactory.java:902)
        at org.awaitility.core.ConditionFactory.untilAtomic(ConditionFactory.java:784)
        at org.awaitility.core.ConditionFactory.untilTrue(ConditionFactory.java:798)
        at com.linecorp.armeria.server.HttpServerAbortingInfiniteStreamTest.shouldCancelInfiniteStreamImmediately(HttpServerAbortingInfiniteStreamTest.java:140)

Not sure if it's just CI being too slow.

Let me extend timeout to 5 seconds just in case.

Thanks, @hyangtack !


RFC: Report on Implementations' Statuses

There should be a mechanism by which implementers (currently mentioned in the README or otherwise) can submit their implementation to be automatically tested and displayed on each commit to the test suite.
Specifically, we would report on:

number of failing tests
supported drafts

At first thought, an easy implementation may be to have each participating implementation implement a black-box executable which:

takes one test as input on stdin, and one argument, the metaschema ID for the metaschema of the provided test
exits successfully for valid instances
exits with non-zero exit status for invalid ones
optionally writes to stdout an object in the draft2019-09 (or later) output format containing output about the validation process

Internally then (here in the test repo), we run each of these binaries via a GitHub action, collect the results, and expose them for viewing.
(This issue is very open for discussion from implementers -- comments welcome.)

@gregsdennis found https://cburgmer.github.io/json-path-comparison/ for a similar effort on JSON path.

I've invited him to do the same thing for us (or at the very least let us copy/modify what he's done).
https://github.com/cburgmer/json-path-comparison/issues/27

Looks like it's a copy/modify, if people here are okay with going that direction.

@cburgmer wrote up some of the logic behind his test suite.  It's a really good read and a lot of the reasoning applies well to JSON Path.
Primarily of note, there are no "expected" test results.  He's truly performing a comparison between implementations and reporting on what he calls the consensus between them, determined by a majority-plus-one of the available implementations agreeing on the output.  He does this because there is no specification for JSON Path, so no really "correct" response for any given query.
Since we have a specification, we don't need the consensus concept.  Our test suite explicitly states the expected result, so we just need to report adherence to that result.  The thing I like from his report is the report itself.
I'll work on modifying it so that it can at least run my implementation.  I'd like other implementors to add their own libraries, but if I can work out how to do some of them, I'll start at the top of the implementation list on the site and work down.

If it helps you I can call out the complexity in the json-path-comparison:

Consensus building
Understanding the domain and define test cases
Handle implementations across all languages

As 3. probably applies to your goal as well I can clarify this point:
3.1. Provide one view into the different languages.
3.2. Make results reproducible (reduce source of indeterminism)
3.3. Deal with the sheer amount of work that's different for every tool stack.
3.4. Make it work across operating systems (Docker)

It would be great to keep the consensus logic though, because this test suite isn't the only data we could compare implementations on.
If we have a blackbox setup for various implementations, I'd be happy to set up a fuzzing harness which uses hypothesis-jsonschema to generate random instances matching (or almost matching) both real-world or randomly generated schemas.  It's been ridiculously effective for me, and I'd be interested in seeing the minimal examples about which implementations disagreed...

$ json_schema_evaluate --add_schema resource1.json --add_schema resource2.json --add_schema resource3.json --schema main_schema.json --data data.json
{"valid": true }
$ echo $?
0

I'm going to close this as well and say "Bowtie is this". Help + feedback definitely still welcome.


Add a new section to the docs about memray performance

Add benchmarks from pyperformance
Add a new section to the docs about memray performance

Instructions for review: don't review anything in the benchmarks/benchmarking/cases folder as these are the pyperformance cases taken directly from the repo and modified to be able to run with different configurations.

I'm a bit surprised that we're committing the JSON results files, rather than just artifacts generated from them. What's the rationale for why those are useful to include in the repo?

That is an error.


cannot translate language in dynamic translation when my setup i18n for new version config but working in en.json/th.json file

Environment

Operating System: Windows 10
Node Version: v16.15.0
Nuxt Version: 3.5.3
Package Manager<EMAIL_ADDRESS>User Config: runtimeConfig, modules, app, css, i18n, imports
Runtime Modules:@unocss/nuxt, <EMAIL_ADDRESS>
($t, t, rt, tm) not working in all dynamic translation
old nuxt.config.ts working all dynamic translation
import i18nOptions from './lang/i18n' export default defineNuxtConfig({ modules: [     '@nuxtjs/i18n'   ], i18n: i18nOptions, })
nuxt.config.ts:
export default defineNuxtConfig({ modules: [     '@nuxtjs/i18n'   ], i18n: {     locales: ['en', 'th'],     defaultLocale: 'en',     switchLocalePath: '/:lang/:route',     setLocaleCookie: true,     getLocaleCookie: 'i18n_loc',     vueI18nLoader: true,     globalInjection: true,     vueI18n: './lang/i18n.config.js',   } })
<i18n locale="en"<EMAIL_ADDRESS>locale="th"<EMAIL_ADDRESS>setup> const { rt, tm, t } = useI18n() </script> <template>
{{ t('meta.title') }}
</template>

Thank you for your reporting!
Nuxt i18n module of your environment is @8.0.0-beta.10
Since then, v8.0.0-beta.11 and later have undergone significant internal structural changes, so your environment may be out of date.
Please try v8.0.0-beta.13 or edge channel version.
And, as the nuxt i18n module issue guideline also
says, please give a minimal reproduction with stackbliz or gihtub repo, so we need it to find out your issue. 🙏

Thanks you, i already solved!
old environment
"vue-i18n": "^9.3.0-beta.16",
"@nuxtjs/i18n": "^8.0.0-beta.10",
"nuxt": "^3.2.2",
<EMAIL_ADDRESS>new environment
"vue-i18n": "^9.2.2",
"@nuxtjs/i18n": "^8.0.0-beta.13",
"nuxt": "^3.6.2",
<EMAIL_ADDRESS>key of solved
"vue-i18n": "^9.3.0-beta.16" >> "vue-i18n": "^9.2.2"
<EMAIL_ADDRESS>>><EMAIL_ADDRESS>my stackblitz
https://stackblitz.com/edit/nuxt-starter-i18n

but $t is not working you can help me? @kazupon

Why do you install vue-i18n together nuxt i18n module?
nuxt i18n module has already included vue-i18n
you don't need it.

Solved after uninstall vue-i18n

Solved after uninstall vue-i18n


Built-in utilization widgets not loading

Dev Home version
0.1401.505.0
Windows build number
10.0.22631.0
Other software
No response
Steps to reproduce the bug

Keep running in an extended period of time (possibly needs to enable quiet background processes)
Remove the widgets
Re-add the widgets back

Expected result
No response
Actual result

Notice how it consumed 12G RAM for not loading anything 😅
Included System Information
No response
Included Extensions Information
No response

Are you saying that you saw this behavior when you added the widgets with "Quiet background processes" turned on?

Are you saying that you saw this behavior when you added the widgets with "Quiet background processes" turned on?

Yes. Then maybe I closed the main window and left the CoreWidgetProvider process running in the background. After a weekend, it's like this.

I recently checked in PR #3559 which fixed a scenario with the same symptoms as this one. I'm going to close this as fixed by that, but please let us know if you see it again (in which case, we'll ask for logs because they'll be helpful).


possible to register functions?

Is it possible to store anonymous functions like simple values?
$app->somefunction = function($name) use($app){
    $app->log->debug($name);
};

$app->somefunction("print me");

Yes.  Check the docs here


Storage Explorer "FetchError" when retrieving child resources

Preflight Checklist

[X] I have installed the latest version of Storage Explorer.
[X] I have checked existing resources, including the troubleshooting guide and the release notes.
[X] I have searched for similar issues.

Storage Explorer Version
1.27.0
Regression From
No response
Architecture
x64
Storage Explorer Build Number
20221201.1
Platform
macOS
OS Version
macOS Monterey
Bug Description
Unable to obtain "Blob Containers" under a certain storage account. When I try to expand "Blob Containers" the following "Error Details" message appears as a pop-up:
Unable to retrieve child resources.
Details:
{
"name": "FetchError",
"message": "request to https://rlnexusstorage2.blob.core.windows.net/?comp=list&include=metadata failed, reason: connect ECONNREFUSED <IP_ADDRESS>:443",
"stack": "FetchError: request to https://rlnexusstorage2.blob.core.windows.net/?comp=list&include=metadata failed, reason: connect ECONNREFUSED <IP_ADDRESS>:443\n    at ClientRequest. (/Applications/Microsoft Azure Storage Explorer.app/Contents/Resources/app/node_modules/se-blob-extension/dist/src/index.js:2:2440800)\n    at ClientRequest.emit (node:events:527:28)\n    at TLSSocket.socketErrorListener (node:_http_client:454:9)\n    at TLSSocket.emit (node:events:527:28)\n    at emitErrorNT (node:internal/streams/destroy:157:8)\n    at emitErrorCloseNT (node:internal/streams/destroy:122:3)\n    at process.processTicksAndRejections (node:internal/process/task_queues:83:21)",
"type": "system",
"errno": "ECONNREFUSED",
"code": "ECONNREFUSED"
}
I notice there are other bug reports similar to this one but I have not seen a fix that works for me.
Steps to Reproduce

Launch Storage Explorer.
Expand "Storage Accounts'
Expand specific storage account
Try to expand "Blob Containers". Storage Explorer buffers for a bit then displays the error message

Actual Experience
Exact error pop-up:

Expected Experience
No response
Additional Context
No response

@CameronDiao can you give using system proxy setting a try? You can read more about it here: https://docs.microsoft.com/en-us/azure/storage/common/storage-explorer-network#use-system-proxy-preview

@MRayermannMSFT Thank you for the quick response! I gave it a try, and unfortunately a new error message appears:

To be clear, all I did was change the "Proxy Configuration" setting in the "Settings/Application" tab; not sure if more steps are needed.

@CameronDiao

Can you please do some looking on if your storage account has any firewalls, connection restrictions, or any other weird network stuff about it?
Are you able to browse the containers of this account using the Azure Portal?
Are you able to browse the containers of other accounts using Storage Explorer?

It magically resolved itself! Thanks for the help, I'll be closing this thread now since there's no longer a problem.


"The file is empty" when uploading to Strava [trkpt vs wpt]

Hi there,
When I upload the file to Strava I get the error message "The file is empty". I think it is because the package uses 'wpt' rather than 'trkpt'. I think Strava only recognizes 'trkpt'. Are there plans to support 'trk' which more represents a track rather than just 'wpt; waypoints?
NB When I manually recreate the same file and replace all 'wpt' references to 'trkpt' and upload manually to Strava it works which is why I think this is the issue.
Any pointers to get around this or plans to add the functionality.
Many thanks..

I take it back. I delved deeper into documentation and you do support this feature i.e. trkpts and more it works now uploading to Strava.
If it helps here is the code excerpt I manilpulated for my needs,
positionList.forEach((point) {       gpx.trks.add(Trk(trksegs: [         Trkseg(trkpts: [           Wpt(lat: point.latitude, lon: point.longitude, time: point.timestamp)         ])       ]));     });


Fix cleargrads and zerograds for uninitialized parameters

Fix cleargrads and zerograds to work properly with uninitialized parameters.

I think good design.
Please add a test. See also #1809.

@beam2d Please check design.

LGTM!


Store & Display Job results

Job Table:

Within the job:

Resolves #1014

It's worth noting that this requires us to trust the output of jobs that render HTML because we render it inline (otherwise there's a stored XSS vulnerability) - but since we have to review all of the jobs that are created it should be fine.
We might be able to use javascript if we need to have unsafe content in there

I'm going to wait to merge this until the migration has been run (and might try to bundle a bunch of migrations if we have any coming)


[BUG] FastAPI doesn't return router result list when using asyncpg

Describe the bug
I took the weekend to study a little the fastapi project, to try creating a full async HTTP request lifecycle (including IO with database). I had success (there are lots of things to improve and understand better) but I found a strange behavior when using postgres with asyncpg. When trying to fetch users from the endpoint [1], a server error is returned, and lots of validations errors are shown in the console. I think that is some strange behavior with asyncpg.Record, because in this point [2] the variable response_content has a list of records representing the result of the query executed. I tried changing the backend to postgres+aiopg and this problem doesn't happen. With this backend, the endpoint works as expected.
1 - http://localhost:8000/users/?q=User%20Name&limit=1&offset=0
2 - https://github.com/tiangolo/fastapi/blob/master/fastapi/routing.py#L116
To Reproduce
Create the main app
app = FastAPI()
app.include_router(routers.router)

db = databases.Database(settings.DATABASE_URL)

@app.middleware("http")
async def db_session_middleware(request: Request, call_next):
    request.state.db = db
    response = await call_next(request)
    return response

@app.on_event("startup")
async def startup():
    await db.connect()

@app.on_event("shutdown")
async def shutdown():
    await db.disconnect()

Create a router to fetch a query with many results and defining a response with typing.List[Model]
router = APIRouter()

@router.get(
    "/users/",
    description="Endpoint to search users",
    response_model=typing.List[User],
    dependencies=[Depends(Authentication)],
)
async def users(request: Request, p: Pagination = Depends()):
    query = select([user_table]).where(user_table.c.name == p.q).limit(p.limit).offset(p.offset)
    result = await request.state.db.fetch_all(query=query)

    return result

Create a model to be tied with the router
class User(BaseModel):
    id: UUID = ""
    address: Address = None
    email: EmailStr
    is_active: bool
    name: str = Field(..., min_length=8, max_length=64, description="The name that represents the user")
    permissions: typing.List[str] = []

    class Config:
        orm_mode = True

Database URL
DATABASE_URL=postgresql://users_api:users_api@localhost/users_api

Error
INFO:     <IP_ADDRESS>:56901 - "GET /users/?q=User%20Name&limit=1&offset=0 HTTP/1.1" 500 Internal Server Error
ERROR:    Exception in ASGI application
Traceback (most recent call last):
  File ".pyenv/versions/3.8.2/envs/sample-fast-api/lib/python3.8/site-packages/uvicorn/protocols/http/httptools_impl.py", line 385, in run_asgi
    result = await app(self.scope, self.receive, self.send)
  File ".pyenv/versions/3.8.2/envs/sample-fast-api/lib/python3.8/site-packages/uvicorn/middleware/proxy_headers.py", line 45, in __call__
    return await self.app(scope, receive, send)
  File ".pyenv/versions/3.8.2/envs/sample-fast-api/lib/python3.8/site-packages/fastapi/applications.py", line 149, in __call__
    await super().__call__(scope, receive, send)
  File ".pyenv/versions/3.8.2/envs/sample-fast-api/lib/python3.8/site-packages/starlette/applications.py", line 102, in __call__
    await self.middleware_stack(scope, receive, send)
  File ".pyenv/versions/3.8.2/envs/sample-fast-api/lib/python3.8/site-packages/starlette/middleware/errors.py", line 181, in __call__
    raise exc from None
  File ".pyenv/versions/3.8.2/envs/sample-fast-api/lib/python3.8/site-packages/starlette/middleware/errors.py", line 159, in __call__
    await self.app(scope, receive, _send)
  File ".pyenv/versions/3.8.2/envs/sample-fast-api/lib/python3.8/site-packages/starlette/middleware/base.py", line 25, in __call__
    response = await self.dispatch_func(request, self.call_next)
  File "./app/main.py", line 20, in db_session_middleware
    response = await call_next(request)
  File ".pyenv/versions/3.8.2/envs/sample-fast-api/lib/python3.8/site-packages/starlette/middleware/base.py", line 45, in call_next
    task.result()
  File ".pyenv/versions/3.8.2/envs/sample-fast-api/lib/python3.8/site-packages/starlette/middleware/base.py", line 38, in coro
    await self.app(scope, receive, send)
  File ".pyenv/versions/3.8.2/envs/sample-fast-api/lib/python3.8/site-packages/starlette/exceptions.py", line 82, in __call__
    raise exc from None
  File ".pyenv/versions/3.8.2/envs/sample-fast-api/lib/python3.8/site-packages/starlette/exceptions.py", line 71, in __call__
    await self.app(scope, receive, sender)
  File ".pyenv/versions/3.8.2/envs/sample-fast-api/lib/python3.8/site-packages/starlette/routing.py", line 550, in __call__
    await route.handle(scope, receive, send)
  File ".pyenv/versions/3.8.2/envs/sample-fast-api/lib/python3.8/site-packages/starlette/routing.py", line 227, in handle
    await self.app(scope, receive, send)
  File ".pyenv/versions/3.8.2/envs/sample-fast-api/lib/python3.8/site-packages/starlette/routing.py", line 41, in app
    response = await func(request)
  File ".pyenv/versions/3.8.2/envs/sample-fast-api/lib/python3.8/site-packages/fastapi/routing.py", line 205, in app
    response_data = await serialize_response(
  File ".pyenv/versions/3.8.2/envs/sample-fast-api/lib/python3.8/site-packages/fastapi/routing.py", line 126, in serialize_response
    raise ValidationError(errors, field.type_)
pydantic.error_wrappers.ValidationError: 3 validation errors for User
response -> 0 -> email
  field required (type=value_error.missing)
response -> 0 -> is_active
  field required (type=value_error.missing)
response -> 0 -> name

Pdb
> /.pyenv/versions/3.8.2/envs/sample-fast-api/lib/python3.8/site-packages/fastapi/routing.py(117)serialize_response()
-> value, errors_ = field.validate(response_content, {}, loc=("response",))
(Pdb) ll
 94     async def serialize_response(
 95         *,
 96         field: ModelField = None,
 97         response_content: Any,
 98         include: Union[SetIntStr, DictIntStrAny] = None,
 99         exclude: Union[SetIntStr, DictIntStrAny] = set(),
100         by_alias: bool = True,
101         exclude_unset: bool = False,
102         exclude_defaults: bool = False,
103         exclude_none: bool = False,
104         is_coroutine: bool = True,
105     ) -> Any:
106         if field:
107             errors = []
108             response_content = _prepare_response_content(
109                 response_content,
110                 by_alias=by_alias,
111                 exclude_unset=exclude_unset,
112                 exclude_defaults=exclude_defaults,
113                 exclude_none=exclude_none,
114             )
115             if is_coroutine:
116                 breakpoint()
117  ->             value, errors_ = field.validate(response_content, {}, loc=("response",))
118             else:
119                 value, errors_ = await run_in_threadpool(
120                     field.validate, response_content, {}, loc=("response",)
121                 )
122             if isinstance(errors_, ErrorWrapper):
123                 errors.append(errors_)
124             elif isinstance(errors_, list):
125                 errors.extend(errors_)
126             if errors:
127                 raise ValidationError(errors, field.type_)
128             return jsonable_encoder(
129                 value,
130                 include=include,
131                 exclude=exclude,
132                 by_alias=by_alias,
133                 exclude_unset=exclude_unset,
134                 exclude_defaults=exclude_defaults,
135                 exclude_none=exclude_none,
136             )
137         else:
138             return jsonable_encoder(response_content)
(Pdb) response_content
[<databases.backends.postgres.Record object at 0x10c3d5430>]
(Pdb) response_content[0]._row
<Record id=UUID('e108216a-01fe-4974-b1c1-e4858be9bb91') address_id=UUID('12f6fb53-821d-48c2-b429-154694155e79'<EMAIL_ADDRESS>is_active=True name='User Name' password='de3f039bb1b804e1f8b1641beeeff1e2f2f96d100d79a354fe0e52780dda43173d76f71eb935c82d5a4e748d790d4fb7e274ef81833f906a47f2c33f612801dea7c7b4db55ceae37ddbea56456b8b561c3291d1e195227003aa9b0c80455d53f' permissions=['create', 'update', 'delete']>

Changing to postgres+aiopg the response as showed bellow and all results are returned as expected
INFO:     <IP_ADDRESS>:57000 - "GET /users/?q=User%20Name&limit=1&offset=0 HTTP/1.1" 200 OK

Environment

OS: macOS
FastAPI Version 0.54.1
Python version 3.8.2
SQLAlchemy 1.3.16
asyncpg 0.20.1
databases 0.3.2
email-validator 1.1.0
pydantic 1.5.1
starlette 0.13.2
uvicorn 0.11.5
uvloop 0.14.0

pydantic.error_wrappers.ValidationError: 3 validation errors for User
response -> 0 -> email
  field required (type=value_error.missing)
response -> 0 -> is_active
  field required (type=value_error.missing)
response -> 0 -> name

This is your error, whatever is mapping the database results to those is not setting those values.
Can you show the code you're using to fetch the results from the database and the map them to your pydantic models?

This is your error, whatever is mapping the database results to those is not setting those values.

Yeap, but using another backend the same code works as expected. The code is that I showed in To reproduce:
@router.get(
    "/users/",
    description="Endpoint to search users",
    response_model=typing.List[User],
    dependencies=[Depends(Authentication)],
)
async def users(request: Request, p: Pagination = Depends()):
    query = select([user_table]).where(user_table.c.name == p.q).limit(p.limit).offset(p.offset)
    result = await request.state.db.fetch_all(query=query)

    return result

If I use postgres+aiopg, this code works well, but if I change to postgres that will use ascynpg, this problem happens.

I created a repository to keep my studies centralized, so if it's necessary to see all project code, it can be done by here https://github.com/fvlima/sample-fast-api/blob/master/app/apps/users/routers.py#L17-L27

I can confirm this issue.
If I use databases with the postgres+asyncpg backend, I get a lot of field required (type=value_error.missing) errors. Using the same query, and instantiating the model manually in ipython via Model(**record) works as expected. Without response_model, I can confirm that all relevant fields exist, are of correct type and are returned to the client, but adding response_model=typing.List[Model] raises said errors.

I haven't actually tested this to make sure, but at first glance I think this is because asyncpg's Record type is more dict than object, so you cannot access properties with dot notation (foo.bar)
This then breaks pydantic's orm_mode, which is expecting objects with named attributes, not a dict-like structure that requires foo['bar'] for accessing values (and doesn't actually have those as attrs).
But again, this is just a guess, haven't actually checked any of this.

Thanks for the help here everyone! :clap: :bow:
@fvlima after this line:
result = await request.state.db.fetch_all(query=query)

You could print or log the result, see its shape, data type, etc. That would probably show why it is not being able to read the data from your return.
You could try the debug function from https://python-devtools.helpmanual.io/

Hey @tiangolo, thank you to answer this issue. I already know the resulting shape and its data type, and it's the same that I showed here https://github.com/tiangolo/fastapi/issues/1369#issuecomment-623561557 and here https://github.com/tiangolo/fastapi/issues/1369#issue-611549439. My point is that the same code has different behavior if we change the database backend from aiohttp to asyncpg. With the aiohttp everything works as expected, but changing it to asyncpg, I face this problem showed here. So, this situation is a behavior that should be controlled by the fastapi framework or by pydantic lib?
> /sample-fast-api/app/apps/users/routers.py(27)users_search()
->
(Pdb) type(result)
<class 'list'>
(Pdb) type(result[0])
<class 'databases.backends.postgres.Record'>
(Pdb) type(result[0]._row)
<class 'asyncpg.Record'>
(Pdb) result[0]._row
<Record id=UUID('24ca2936-5044-4d3e-bafe-904a68b0194f') address_id=UUID('d20918bf-0e82-4ae5-a2d0-cb569b6ac0c4'<EMAIL_ADDRESS>is_active=True name='User Name' password='da71e06594909c8d5f702eab9dec56ae8535ea19533a4b78ab3b97870399f7588835249e055909a0d16d713d1fb40218a49096aca5a2a9c5f334577d06244543378a5a0056882492e8415bc5d28277942d34a350c028f2428025c630ccd5ac3c' permissions=['create', 'update', 'delete']>

I'm currently not using encode/databases and I'm not an expert on it, but I know it's not an ORM, and from the data shapes you show it seems that result[0] doesn't have a shape compatible with your Pydantic model, it seems it has an attribute ._row that contains the actual data instead of it being accessible like a dict or an object/class.
It might be that databases is having a different behavior depending on the driver used, not sure (maybe they have it documented).
But anyway, if you need to support a custom different data type that doesn't behave like a dictionary or an object with attributes (e.g. an object with a single attribute ._row that in turn contains the actual data) then you might want to implement a GetterDict https://pydantic-docs.helpmanual.io/usage/models/#orm-mode-aka-arbitrary-class-instances

I'm doing the following treatment to overturn this situation:
class AttrDict(dict):
    def __init__(self, *args, **kwargs):
        super(AttrDict, self).__init__(*args, **kwargs)
        self.__dict__ = self

class CRUDBase(Generic[CreateSchemaType, UpdateSchemaType, OutputSchemaType]):
    def __init__(self, table: Table):
        self._table = table

    async def get(self, **kwargs) -> OutputSchemaType:
        query = (
            self._table
                .select()
                .where(and_(getattr(self._table.c, key) == value for key, value in kwargs.items()))
        )
        obj = await database.fetch_one(query=query)
        return obj if obj is None else AttrDict(**dict(obj))

You can use the returned object and validate it with Pydantic now.

So, I will close this issue since that is not a problem here. Maybe it can be handled by the pydantic project, but I think this is a topic for another discussion. If we can just override this behavior with AttrDict, there is a way to resolve this problem bu now.


fix: prevent extra log messages in stdout

Description
GitLab CI still logs extra messages with log filtering. Disabling propagation to isolate the trestlbot logger similar to the compliance-trestle logger.
Add a fix in tests to ensure logs are still found using caplog during test time
Type of change

[X] Bug fix (non-breaking change which fixes an issue)

How has this been tested?

[X] Integration test with GitLab CI
[X] Verify functionality still works with GitHub Actions - https://github.com/jpower432/cautious-potato/actions/runs/8428095727/job/23079946122

Checklist

[x] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules

Thanks for the review @beatrizmcouto. After a quick re-review, I realized that the configure_test_logger should be with the test code and not in log.py. https://github.com/RedHatProductSecurity/trestle-bot/pull/199/commits/cdb39ec67cfd1a669206fb1959f0cb8e0e9a34a2 moves it over.


SMTP settings are required to send mail

"Defaults to sendmail" is not really true, since there is no sendmail inside the docker container for it to use.  So without SMTP settings it just doesn't work.  README should be updated for this.
I also suggest that allow_mail_notifications default to false unless SMTP is set up.

Duplicate of #38


[pixie-chart] Can't apply custom memory limit/request on vizier-pem

Bug description
I can't seem to find the proper way to define the memory limit/request for the pixie-chart "vizier-pem" pods/daemonset.
Version of Helm and Kubernetes
helm v3.8.1
k8s v1.22.6
Which chart?
nri-bundle v4.4.6
What happened?
I am not sure this is a bug, but I have no clue if there is a proper channel for asking these before reporting here. I am Pulumi IaC to deploy nri-bundle to my AKS cluster. So far so good, but the vizier-pem pods are requesting 2Gi of memory, and I want to reduce this. Since this is a chart outside of this repo, I am having trouble identifying how can I pass this value properly through the configuration. I tried setting this using "pixie-chart.pemMemoryLimit" and "pixie-chart.pemMemoryRequest", which is accepted by the configuration and the apply passes the value forward, but the pods continue using the previous default value of 2Gi, and the daemon-set continues with the same definition as before.
So, in summary, I need help understanding if this is a bug or I just not have a proper configuration to make the change reach the daemonset definition.
What you expected to happen?
The daemonset should accept the new values.
How to reproduce it?
Apply a nri-bundle with pixie-chart enabled. Later try to change the memory values.
Anything else we need to know?
Since I am using Pulumi, please do not suggest directly kubectl commands to apply configuration changes, since this won't work on my CI/CD workflows. I need to pass this on the nri-bundle chart configuration options.
If this is not the proper channel for these kind of questions (which are maybe not bugs), kindly let me know so I can follow up this elsewhere.

Same issue here. It's especially an issue on non production environments as we work with smaller instance sizes there.


Aerial Screen Saver - Request

John,
Will you be writing this screen saver for the Linux community also? I would love to have something like this on my Linux boxes.

There's a Linux version available here... https://github.com/graysky2/xscreensaver-aerial/

Duplicate of #137


changefeed (ticdc): add ddl manager

What problem does this PR solve?

Issue Number: ref #8106
What is changed and how it works?
Only add a new struct and some new methods, no any logic changes.
Test will be added in next PR.
Check List
Tests
Questions
Will it cause performance regression or break compatibility?
Do you need to update user documentation, design documentation or monitoring documentation?
Release note
None

/run-verify

/merge


placeholdit format fix

I had no idea why all my placeholders were changed to 'png' x)

Thanks for picking that up! Already merged into the code base.


Relative vs. absolute links

Should links within a catalog hierarchy be absolute (all links fully qualified) or relative (to self, which can substituted with the URL that the document was fetched from)?
Pros / cons: portability, difficulty of resolving individual links, etc.

Discussion with sprint-3-static group:
Absolute links are required in order to link to external resources.
Absolute links are required for self (is self still required).
Relative links can break when end users pull the records local
The problem of updating links when moving can be overcome.
There are cases in machine learning and other processing where the desire it to copy the whole "directory" and in this case relative links are very useful.

I think this has been fixed and can be closed.

I realize this issue is closed, but it's what popped up when I went in search for a solution...
@jeffnaus wrote:

The problem of updating links when moving can be overcome.

What do you suggest?
In brief: We are looking at implementing STAC for a large volume of near-real-time remote sensing assets. As the asset files age they will be archived from expensive (fast) storage to longer-term, cheaper storage locations. Of course, this will break any absolute links. As I see it, we have a couple options:

Update the links in each STAC item. This means browsing through the items will be broken until the STAC Items have been re-crawled/re-indexed, which will need to occur continuously. Since the assets may be moved several times, this could get very messy.

Replaced moved assets (and STAC Items) with permalinks that refer to the new locations. We'd still need to maintain these, but it's fairly easy and instantaneous. (This is what we're thinking of doing.)

Is there another approach we should look at?

The suggested solution for your use case was that you use relative links for all links except the link with the relation type self. This still allows navigation through the catalog and updating can be done later as only the reference to self needs to be updated. See also https://github.com/radiantearth/stac-spec/blob/master/item-spec/item-spec.md#relation-types


Alternate time signatures & time signature/tempo changes?

Just curious if anyone has any ideas yet about how to support alternate time signatures & changing time signatures (and tempo?) at specific points in a song.
This is usually done with time grids & markers describing the time/tempo change set on the grid in DAWs & midi notation apps like Guitar Pro, TuxGuitar, TabIt, etc.

Once I fix #24 and we can cancel and reschedule notes, this shouldn't be too hard.

In regards to time signatures, in the README it says it only supports 4/4 time, but from my perspective this is not true because the time signature is determined by the resolutions all the sequences used. You can just use resolutions that are divisors or multiples of the number of beats per measure, the top number in the time signature.
Examples:
In 4/4 time with resolution of 1 each step is a whole note, resolution of 2 a step is half note, 4 is a quarter, 8 is a eighth, 12 is a eighth-triplet, and a resolution of 16 each step is a sixteenth note.
3/4 a resolution of 1 each step is a doted half note, 3 is a quarter note, 6 is a eight note, 9 is a eighth-triplet, and 12 is sixteenth note.
There might be a way to better express this in the library, but the primitive of resolution does allow for use of any time signature.

You can even use a resolution of 3 in 4/4 time to express a half-triplet.


[BUG] Viewport jumps while streaming long ChatGPT responses on iOS

Describe the bug
On iOS browsers, while streaming a ChatGPT response, the window starts jumping when the text streamed is below the visible viewport. This continues even after scrolling manually.
This makes it impossible to read the response while it is being generated. For long GPT-4 answers, this behavior unfortunately makes the app unusable.
Where is it happening?

Which device [Mobile, iOS]:
Which browser: Safari, Chrome, Firefox
Which website:

To Reproduce
On iOS browser, prompt a ChatGPT answer longer than the available viewport. Jumping will start as soon as the viewport is filled up.
I have not tested for other LLMs.
Expected behavior
Min expected behavior to fix this bug:
The viewed screen stays fixed after scrolling manually once. The user can then read the text and scroll uninterrupted. This is the behavior of openai.com
Optimal expected behavior:
The viewed screen stays fixed automatically as soon as the streamed response exceeds the viewport. The user has to scroll down automatically, when he wants to see more of the response.
Screenshots / context
See attached video.
https://github.com/enricoros/big-AGI/assets/40561724/dee04725-3d22-46a6-a5f3-274ecf7787bf

Hi @LennardSchwarz can you try with the latest version of the app, released yesterday? (1.9.0)
The scrolling framework has been written fully from scratch exactly to address this issue

Resolved with: https://github.com/enricoros/big-agi/issues/304?utm_source=get.big-agi.com&utm_medium=big-agi


Tests not passing but assertion is passing

Hi,
I'm puzzled why I'm getting Tests passed: 0 but not explicitly failing from my tests when running via Idea.
I made a simple pom and I seem to pass the examples in another project, but my custom tests aren't passing. It seems the assertions are as expected and the tables are created. Then for some reason some part of the test setup or annotations is not passing my tests. Can someone get me back on track?
Thanks
package com.test.scno.hiveunit.location;

import com.google.common.collect.Sets;
import com.klarna.hiverunner.HiveShell;
import com.klarna.hiverunner.StandaloneHiveRunner;
import com.klarna.hiverunner.annotations.HiveProperties;
import com.klarna.hiverunner.annotations.HiveResource;
import com.klarna.hiverunner.annotations.HiveRunnerSetup;
import com.klarna.hiverunner.annotations.HiveSQL;
import com.klarna.hiverunner.annotations.HiveSetupScript;
import com.klarna.hiverunner.config.HiveRunnerConfig;
import org.apache.commons.collections.MapUtils;
import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;

import java.io.File;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;

@RunWith(StandaloneHiveRunner.class)
public class SomeTableTest {

    @HiveRunnerSetup
    public final HiveRunnerConfig CONFIG = new HiveRunnerConfig(){{
        setHiveExecutionEngine("tez");
    }};

    @HiveProperties
    public Map<String, String> hiveProperties = MapUtils.putAll(new HashMap(), new Object[]{
            "MY.HDFS.DIR", "${hadoop.tmp.dir}",
            "my.schema", "SOME_DB",
            "my.schema2", "ANOTHER_DB"
    });

    @HiveSetupScript
    private String createSchemaScript = "create schema ${hiveconf:my.schema}"+";" +"create schema ${hiveconf:my.schema2}";

    @HiveResource(targetFile = "${hiveconf:MY.HDFS.DIR}/data/in/data.gz")
    private File dataFromFile = new File(ClassLoader.getSystemResource("data/location/SOME_DB/SOME_TABLE/data.gz").getPath());

    @HiveSQL(files = {"schemas/hive/ANOTHER_DB/SOME_TABLE.sql"}, encoding = "UTF-8")
    private HiveShell hiveShell;

    @Test
    public void testTablesContainsItems() {
        List<String> sourceTableResult = hiveShell.executeQuery("SELECT * FROM SOME_DB.SOME_TABLE LIMIT 10");
        List<String> targetTableResult = hiveShell.executeQuery("SELECT * FROM ANOTHER_DB.ANOTHER_TABLE LIMIT 10");
        System.out.println(sourceTableResult.size());
        System.out.println(targetTableResult.size());
        Assert.assertTrue(sourceTableResult.size()==10);
        Assert.assertTrue(targetTableResult.size()==10);
    }
}

<?xml version="1.0"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.test.scno</groupId>
  <artifactId>scno-hive-unit</artifactId>
  <version>1.0.0</version>
  <name>${project.artifactId}</name>
  <properties>
   <hiverunner.version>4.0.0</hiverunner.version>
    <encoding>UTF-8</encoding>
    <junit.version>4.12</junit.version>
    <!-- Plugins -->
    <surefire.plugin.version>2.21.0</surefire.plugin.version>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
  </properties>
  <dependencies>
    <dependency>
      <groupId>com.klarna</groupId>
      <artifactId>hiverunner</artifactId>
      <version>${hiverunner.version}</version>
     <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>${junit.version}</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.21.0</version>
        <configuration>
          <includes>
          </includes>
          <forkCount>1C</forkCount>
          <reuseForks>true</reuseForks>
          <argLine>-Xmx2048m -XX:MaxPermSize=512m</argLine>
          <systemProperties>
            <hiveconf_hive.execution.engine>tez</hiveconf_hive.execution.engine>
            <hiveconf_hive.exec.counters.pull.interval>1000</hiveconf_hive.exec.counters.pull.interval>
            <commandShellEmulator>BEELINE</commandShellEmulator>
            <enableTimeout>false</enableTimeout>
            <timeoutSeconds>30</timeoutSeconds>
            <timeoutRetries>2</timeoutRetries>
          </systemProperties>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.7.0</version>
        <configuration>
          <source>${maven.compiler.source}</source>
          <target>${maven.compiler.target}</target>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>

CREATE EXTERNAL TABLE SOME_DB.SOME_TABLE
     (
      E1 VARCHAR(5),
      E2 VARCHAR(100),
      E3 VARCHAR(50),
      E4 DATE,
      E5 TIMESTAMP,
      E6 TIMESTAMP
      )
ROW FORMAT DELIMITED FIELDS TERMINATED BY '\037'
STORED AS TEXTFILE
LOCATION "${hiveconf:hadoop.tmp.dir}/path/to/data.gz";

CREATE EXTERNAL TABLE ANOTHER_DB.ANOTHER_TABLE
     (
      E1 VARCHAR(5),
      E2 VARCHAR(100),
      E3 VARCHAR(50),
      E4 DATE,
      E5 TIMESTAMP,
      E6 TIMESTAMP
      )
STORED AS PARQUET
LOCATION "${hiveconf:hadoop.tmp.dir}/data/out/";

INSERT INTO ANOTHER_DB.ANOTHER_TABLE SELECT * from SOME_DB.SOME_TABLE

Test failure but values are returned as expected.

Where is the test failure in the above log? I don't see any output from JUnit indicating the test failed? Do you get some feedback in the IDE or somewhere else that says this?

Hi, there's a clear green check mark on pass but not sure what that symbol is. I will take a screenshot of a passing test. If you missed it look at the top left. Tests passed 0 of 1 test. I will try to give more details and run through the debugger and see if I can figure out anything else.

A separate project to reproduce would be nice.
I'm a bit confused, I thought the original issue you raised was that the
assertions pass, i.e. your tests pass but that HiveRunner wasn't indicating
that the tests pass. The above screenshot seems to indicate that all the
tests are passing so this is good isn't it?
On 25 July 2018 at 16:26, colin-williams<EMAIL_ADDRESS>wrote:

Here's examples of the tests passing. I'm going to create a project which
reproduces the failures so it's easy to reproduce on clone.
[image: pass]
https://user-images.githubusercontent.com/28717206/43210544-434c4f0e-8fe4-11e8-834e-58a048ba2db5.png
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/klarna/HiveRunner/issues/94#issuecomment-407794495,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AABzEbXojJB6dMSAga4Ht966draS-DESks5uKI4WgaJpZM4VblrZ
.

OK, good luck tracking it down!
On 25 July 2018 at 17:29, colin-williams<EMAIL_ADDRESS>wrote:

I took a screenshot of passing tests from a different example to
juxtaposition the differences between a passing test and my issue. I tried
to reproduce but there's some subtle issue I am having problems with. Then
I will update when I can reproduce or if I can find the issue.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/klarna/HiveRunner/issues/94#issuecomment-407815655,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AABzEYUvOp8aVJXgBJIEE9VgZJX2XJUfks5uKJzagaJpZM4VblrZ
.

We're having the same issue:

Our behaviour appear when moving from 1.2.2 to 2.0.0

Posting from one of our engineers:
Could perhaps be other issues but what I have identified is that when there is any set statement in a hive sql we get this behaviour.
Have debugged the code all the way down to the nitty-gritty in the hive code and can see that the set works as expected without throwing any errors as far as I could tell. Can also see that hiverunner notifies IntelliJ that the test has finished and without reporting any failures.
Of course I must be missing something somewhere but no solution in sight so far.
Get the same behaviour when running tests in the hiverunner project from github for example:
MultipleExecutionEnginesTest
OrcSnappyTest
The good news is I found the commit in hiverunner where this behaviour started:
80d990c5220ab5aa175b73f993b7a485817b3081
The bad news is that the commit contain 79 changed files and it is the commit where hive.version was bumped from 1.2.1 to 2.3.3.
Actually the behaviour disappear if hive.version is flipped back to 1.2.1(and making some small changes to make the code compile with that version).
Behaviour appear when moving from 1.2.2 to 2.0.0

Any resolution on this issue? I have the same behaviour using IJ, but it works fine in Eclipse.

Can you compare the IJ and Eclipse classpaths? It might be due to some classpath ordering differences.

@PelleUllberg described the problem very well, I am experiencing the same.  Looks like when a Hive query has an explicit "SET" it forces the unit test to exit.
`
USE ${hivevar:db};
SET hive.exec.dynamic.partition.mode=nonstrict;
SET hive.exec.dynamic.partition=true;
SELECT * FROM mytable;
`
This test ^^^ will fail.  If you remove the "SET", it works.

@labbedaine @PelleUllberg @colin-williams @philltomlinson
Hey everyone, I'm trying to fix this issue and I was wondering if any of you figured anything else that could be useful?
I've been trying things with the https://github.com/labbedaine/HiveRunnerAssertionIssue project but I still haven't figured anything out.
Any help is appreciated :) !


UnhandledPromiseRejectionWarning: Error: Invalid instant lock proof signature during Identity creation

Using v21 sdk/dashmate I got an error during identity registration:
(node:771073) UnhandledPromiseRejectionWarning: Error: Invalid instant lock proof signature
I sent a L1 tx to the wallet to pay for the credits, the tx had matured 10 mins or so. Creating a new wallet and sending a fresh L1 tx worked.

retest failed see #204

Could you check logs from DAPI docker containers of Dashmate? If there are errors - please bring them here. There must be 6 containers, please check all of them.

retest passed


feat: add GeoSearch widget & connector

This PR adds a GeoSearch connector and a widget implemented with Google Maps.

Support:

refine on interaction
control the interaction from the widget
work out of the box with Places (aka with a GeoCoding widget)
built-in / HTML marker
URLSync

Don't support:

InfoWindow / InfoBox out of the box, can be plug (see the examples)
Widget communication out of the box, can be plug (see the examples)

Known issue:

the docs is far from perfect, don't hesitate to give feedbacks!
doesn't work with an array for the _geoloc attribute, only works with an object
only work with hits for now (don't work with facets values for example), but we can probably find a solution for that with the connector implementation

Will change:

design & markup: will review the UX/design with the design team. After the design review we should directly integrate the GeoSearch markup in IS.css

You can play with the example on DevNovel. Look at the code source of the examples, especially for the InfoWindow, InfoBox & Hits communication. Don't hesitate to give some feedbacks on the behaviour or report bugs!

The example in the connector does not render anything.

Yep you are right! It wasn't create for running but more for documentation purpose. I'll remove the run button from the page.

I think we're good to go!!! 🎉
Congrats and thanks @samouss

I didn't use the @staticExample is this PR but I can make another one.


Support --ignore-error for COPY/ADD

Closes #13045
Although its already closed for a different reason.
This adds support for specifying --ignore-error on the COPY or ADD
Dockerfile commands. I think this is an excellent example of why
someone may want to not stop processing on an error: https://github.com/docker/docker/issues/13045#issuecomment-110052155 . Although #13045 itself is a
good example, IMO.
When there's an error on COPY or ADD we will still show the error to
the user (unless -q is specified) but then we'll keep going after
showing:
** Ignored errors

unless -q is specified, then nothing is shown.
Note that the temporary image ID is the same as before the bad cmd - as
expected.
I code change allows for other commands to support this flag as well
but for now just COPY/ADD support it.
Signed-off-by: Doug Davis<EMAIL_ADDRESS>

@duglin super speedy work :clap:
Thanks for taking a look! cc @ashb

Won't --ignore-errors be to "wide"? Are there other errors that will be ignored because of this (thinking)

What do you mean by "too wide"?  It will ignore all errors while processing the cmd.

Meaning; could there be errors apart from the local file not existing, that should not be suppressed (just  wondering)

all errors are ignored.  Think of it as just ignoring the exit status and moving on.

closing due to https://github.com/docker/docker/blob/master/ROADMAP.md#22-dockerfile-syntax

That's disappointing. I understand we need to prioritise what we do first but it would seem more sensible to review PRs on a case by case basis rather than ruling out features based on what component they change?
Anyway how can we track this issue now? Should we re-open #13045 if this isn't going to be merged?

Is anything happening with this request?


Add support for rendering PDFs with PDF.js

We're not going to support OS-native plugins, so Flash and Adobe's PDF viewer are out, but PDFs are pretty nice so maybe PDF.js can be used.

Heads up, I'm going to start looking into this.

@pfrazee Right now it looks like .md files are only formatted over the dat:// and http:// protocols. However they are not formatted over the file:// protocol. Is this intended, or should markdown and pdf files display a "viewer" over the file:// protocol as well?

@webdesserts what makes you say file:// isnt supported by markdown rendering?

@pfrazee Here was when I encountered the issue: https://clips.twitch.tv/SpineyBreakableYakinikuYouWHY?tt_medium=creation
You can see I drag and dropped a file into 0.8 and it was rendered raw.

Ah! Well that's a bug. Give me a few moments, I'll see if I can diagnose it.

Ok fixed. The issue was that the file:// protocol doesn't give a mimetype

@pfrazee ahh, Ok. Thanks! I'll keep this in when I work on the pdf detection.

Cool. Here's how I fixed it: https://github.com/beakerbrowser/beaker/commit/284e3361ac0749ce8a72a1f1e513b3c8e8a6ef39