GH-35746: [Parquet][C++][Python] Switch default Parquet version to 2.6

Change the default parquet version to 2.6.
Discussed in:

ML

Issue

Closes: #35746

Taking a quick look at some of the Python failures:

test_write_error_deletes_incomplete_file: I assume the test relied on parquet.write_table to raise an error because of nanosecods being present, and they would get truncated. So either we need to add something else that errors, or we can add version="2.4" to keep it using the older parquet version and thus it still errors
test_timestamp_restore_timezone_nanosecond: it is creating the expected result with microseconds, but now it comes back as nanoseconds. I think here we want to test explicitly that the timezone is preserved when the resolution changes, so I would also add a version="2.4" to keep the test as it was. But you could parametrize the test just above to use different resolutions (ms, us, ns) to cover all of them.
test_parquet_version_timestamp_differences: also needs to be updated because the expected now contains nanoseconds instead of microseconds (but there are some comments there that are a bit outdated it seems ..)

For C++, the test failures are in
 [  FAILED  ] 2 tests, listed below:
[  FAILED  ] TestArrowReadWrite.DateTimeTypes
[  FAILED  ] TestArrowReadWrite.ParquetVersionTimestampDifferences

and I suppose those will also be updated to reflect the new defaults (nanoseconds are preserved), or updated to test both old default of 2.4 and new of 2.6

@jorisvandenbossche This was so helpful!
Yeah, with the _check_roundtrip calls, it seems that when the version is not explicitly set, it uses the default for write_table. And sometimes, the assumption was that this default version was '1.0'. Tested behaviour didn't change for 2.4 and so it didn't matter that the new default version was being used for _check_roundtrip.

The test in C++ looks ok. But I'm afraid that we might leak some test under 2.4, so maybe we can separate and test 2.4 and 2.6?

AsofJoinTest needs to be updated as well.

@github-actions crossbow submit -g integration

There might still be a few cases where the test coverage for all options can be improved (see some of the comments), but if needed, let's do that in a follow-up PR.
I am going to merge this now, because we have another PR waiting on this one that we also want to get in before the feature freeze.

Thanks @anjakefala!


[CWS] add ubuntu 22.04 to functional tests

What does this PR do?
This PR adds an ubuntu-22-04 entry to CWS functional tests. Because ubuntu 22.04 ssh server doesn't accept ssh-rsa keys by default, this PR also removes the ssh key creation from kitchen setup and lets the different kitchen provider to manage those keys themselves (this is needed since just adding the platforms entry was failing with ssh failed error).
Motivation

Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

Reviewer's Checklist

[ ] If known, an appropriate milestone has been selected; otherwise the Triage milestone is set.
[ ] Use the major_change label if your change either has a major impact on the code base, is impacting multiple teams or is changing important well-established internals of the Agent. This label will be use during QA to make sure each team pay extra attention to the changed behavior. For any customer facing change use a releasenote.
[ ] A release note has been added or the changelog/no-changelog label has been applied.
[ ] Changed code has automated tests for its functionality.
[ ] Adequate QA/testing plan information is provided if the qa/skip-qa label is not applied.
[ ] At least one team/.. label has been applied, indicating the team(s) that should QA this change.
[ ] If applicable, docs team has been notified or an issue has been opened on the documentation repo.
[ ] If applicable, the need-change/operator and need-change/helm labels have been applied.
[ ] If applicable, the config template has been updated.

Looking at https://gitlab.ddbuild.io/DataDog/datadog-agent/-/pipelines/7778576 all kitchen tests are passing except the windows ones, but with failure similar to the ones found on the main branch (for example https://gitlab.ddbuild.io/DataDog/datadog-agent/-/pipelines/7777411)

Oh, wait, it seems this broke some things here: https://gitlab.ddbuild.io/DataDog/datadog-agent/-/jobs/131913499

@paulcacheux I think you will have to revert 😓


Why is there a delay before executing?

In many (most?) use cases, I think it would make more sense to try to first execution immediately, and then do the delay after executing.

Hi @casret, when I wrote the package, my thinking was as follows:
One would execute a request normally the first time that would error/fail. In the catch, one would diagnose the error. If the code was one that could be recovered from by retrying (e.g. a 429 returned due to the server throttling requests), one would pass the request into the backoff function, which would apply a delay before the first attempt.
What do you think? It seems in your case you want to backoff regardless?

You don't want to have two separate blocks of code that do the same thing, I would add an option for executing immediately that defaults to true because this is my expectation as well

I released v1.2.0 on npm today that provides the delayFirstAttempt option. Will close those issue. Thanks for the feedback :)


[feature] task option cache diverged from CLI option cache

Not marking this one a bug because it could be intentional. Not really a feature but more of an enhancement.
Is your feature request related to a problem? Please describe.
The task option cache is a strict true/false boolean.
The CLI option cache accepts an array of valid string values.
This is a bit confusing for DX
Describe the solution you'd like
It would be cool if both options accepted the same values. There'd be no cognitive overhead to executing a task on the CLI versus authoring a task in yaml
Describe alternatives you've considered
Obtain a bigger brain for myself.
Additional context

do those values have the same effect on the CLI?

They do, but that's assuming hashes constantly match.

I've developed some muscle memory for the differences 😆  so it's no longer the problem that it was initially. We can close this if you're good to.


nom4: the trait std::error::Error is not implemented for nom::internal::Err<&[u8]>

It would be great to have that implemented so that it can be used with try! easily

from what I see in https://doc.rust-lang.org/std/error/trait.Error.html it would not be terribly useful. The description method must return a &str :/

Well, in nom3, it was implemented, so we could bubble up some nom::Error alongside other Errors easily.

What would you think about (optionally?) supporting failure for nom::Err? Fail then offers a compat fn for converting to std::Error if necessary.
On the other hand, there seems to be support to forget about Error::description and just use the Display impl because of the limitations of returning &'static str.
Even if you don't want to impl Error or Fail for nom::Err, due to whatever reasons, it would be beneficial to provide a compat struct with a From impl in order to easily stuff it into a "I don't care; something went wrong" so the option is there.

this would be useful for nom 5, and a bit easier to implement

Update: The Error::description soft-deprecation has landed on stable (quite some time ago actually).
https://doc.rust-lang.org/std/error/trait.Error.html#method.description

Although using it won’t cause compilation warning, new code should use Display instead and new impls can omit it.

The ? operator is great and it would be nice to be able to use it with nom.

the fact that the error type of nom doesn't implement error is REALLY annoying, you can't use Box<dyn Error>. Is there a technical problem to that ?

it's now implemented with #1043


photonui.Select: fixes selected value not updated when locale changes

This PR closes issue #71

LGTM


ENH: Export RTK cmake variables on find_package(ITK COMPONENTS RTK)

Set RTK_EXPORT_CODE_BUILD to specify cmake variable that should be set when
trying to find package RTK.
This allows for calling only find_package(ITK COMPONENTS RTK) when an
external builds against RTK.

@SimonRit This change should allow external application to build against RTK using find_package(ITK COMPONENTS RTK). Then you just have to specify the ITK_DIR used to build RTK.
For now, only RTK_USE_CUDA is specified in the export code. Please let me know if you think of any other variable that should be set when calling find_package.

@LucasGandel Thanks. I'm not sure I understand. If we keep RTKConfig.cmake.in, why do you need to set RTK_EXPORT_CODE_BUILD since RTK_USE_CUDA is already set in RTKConfig.cmake? If you just forgot to remove RTKConfig.cmake.in, I would say everything meaningful in it (e.g., version numbers) should go in RTK_EXPORT_CODE_BUILD.

@SimonRit Keeping RTKConfig.cmake allows to use find_package(RTK). This way is not ideal as it will ask for an ITK_DIR anyway.
Using the RTK_EXPORT_CODE variable, we can pass all the meaningful variables when calling just find_package(ITK COMPONENTS RTK). This way we just need to specify the ITK_DIR, no RTK_DIR anymore.
Removing RTKConfig.cmake will remove support for find_package(RTK), there might be some application impacted but you tell me what we should do. In the meantime I'll add the missing variable in RTK_EXPORT_CODE.

@SimonRit You are right. I changed the content of RTKConfig.cmake.in to avoid dupplication of the code.
The second option is the way to go. We keep backward compatibility this way.


Add return button to chat.html

Not sure how user is supposed to know how to back out

Check GUI for new button


Revert "Support barrier mode for mapInPandas/mapInArrow (#10364)" [databricks]

Reverting #10364 to unblock Databricks premerge and nightly builds since it does not build with Databricks (just like #10343).
This reverts commit cca5955da35233c4d35f0b40363c990258549def.

build


Unit test coverage of all Track events

[ ] All Track events covered with a unit test

List any events you cannot test in the comments here.

Currently for the generation of the ui tests we are using Android libraries, called "Espresso" https://developer.android.com/training/testing/espresso, it helps us to interact with the activities, fragments and inputs, but it does not have the scope of making tests interacting with the device. The events that could not be generated by ui tests are:

Device orientation: Unable to manipulate the device with "Espresso"
Window orientation change: Possible duplication with Device orientation?
Device motion: Unable to manipulate the device with "Espresso"
Copy, Cut, Paste events: They are events that are made up of several gestures (Text selection, long click on the text, not on the field, selection of an editing option), which cannot be recreated in the "Espresso" documentation


Adds Post Types Definitely and Options Definitely frameworks

This PR adds two frameworks that I maintain: Post Types Definitely and Options Definitely which make scaffolding backend functionality and UI in WordPress easier.

Hey @felixarntz, thanks for the PR.

I checked the GitHub repos, and I think you have typos there because both of them do not exist.
With regards to the thumbprints, just to make sure, when plugin/theme is using your frameworks, if I check the given file + string, I'll find it there?

Oh my bad, I didn't provide my correct username 🙈
Regarding the thumbprints, these are correct.
I'll update the PR to have the right GitHub repos in it.

@vovafeldman: I updated the PR with the latest commit.

@felixarntz the frameworks are now listed on the site https://includewp.com/
The scraper didn't find any matching plugins/themes on .org for the frameworks. It could be one of the following:

The framework isn't used by any .org plugin / theme.
The framework is loaded using TGMPA (not yet recognized by IncludeWP).
Something wrong with the thumbprint.

If you know there's a plugin/theme using it for sure, please share the URL so we can check why it wasn't recognized.

It might just be that the library is not used by any, that's probably it.


Distribution says successfully created when it really failed due to invalid item quantities.

While fulfilling requests today I ran into trouble.  I fulfilled a request and hit save. All seemed to be well, no error messages, but I didn't see it in the distributions list.  It was still sitting in requests as started.  After several tries with the same result, I finally realized that I was trying to distribute more of an item than we had in stock.  Never in this time did I get an error message indicating that I didn't have enough items in stock or the order hadn't been filled.

@armahillo we should also add a way for users to mark requests fulfilled themselves

Also, I think this will be addressed by @edwinthinks 's most recent PR - we should add a regression test of this case to specifically test it :)

@mdworken I agree.
I'll go write some tests that do this one and the other one I just commented on and verify that they aren't happening anymore.

@mlrusie So this is sort of behaving correctly. I think the failure here is in not informing you that there's insufficient inventory. Diaper banks have requested that Requests be allowed even if there's insufficient inventory on hand because they can still try to get the inventory necessary to fulfill it. So you should be able to "start" it.
I'm writing a quick query that will see whether or not you have sufficient inventory for a request, and it will note that on the page. Would that be enough?

I think this has been addressed. I noticed we now include an error message on the top.

Diaper banks have requested that Requests be allowed even if there's an insufficient inventory on hand because they can still try to get the inventory necessary to fulfill it. So you should be able to "start" it.

I think this is an interesting idea but I think is out of the scope of the current issue reported. I will add it to our documents to revise and review this initiative.
For now, I'll close it since I think we've addressed the original issue.

Re-opening this issue. I understand the problem more clearly now and can reproduce the issue.
Creating a distribution via a request will not yield any error if the inventory count is off. Look below for an example of me trying to fulfill a request for an amount that the bank does not have.

No error message comes up at all. And as mentioned, the distribution stays in the "Started" state.

@mlrusie thanks for reporting this issue! I've created an issue from this with more details on how we can address it #1794


Is there a console-like environment where I can test finding (or interacting with) elements

Hi,
Is there a way to test commands like FindElementsByName. This is a simple example but if I want to find an element in a list which contains another specific element which contains some text, then it would be handy to test this code in a console-like environment. Rather than running my test until I get it right.
Anybody who is used to Xamarin UITesting will have access to a REPL (a console which can be used to interact with you app).
Something similar would be very handy here. I am new to WinAppDriver and am trying to extend existing ios/android Xamarin UITests tests to enable me to test Windows apps.

You can use WinAppDriverUI Recorder to find control properties but there's no dedicated console for doing what you want to do. It is an interesting idea though.

If you want to use a Shell like interface, maybe you could leverage existing Python support of WinAppDriver.

On a secondary note, it should be possible to be done through Node.js as well. I tried but couldn't make it work.
Here's a thread about running WinAppDriver in Node.js, maybe it will be helpful for you.
https://github.com/Microsoft/WinAppDriver/issues/626

I suggest you to use appium-desktop.
Personally I think it's better than Inspect.exe, also over UI Recorder in interacting.
Although it doesn't provides REPL, but you can use XPath.
Please refer to Interactive Search part of Inspecting UI Elements for WinAppDriver automation using Appium Desktop

@licanhua Does the latest version of appium desktop work for you, because it does not work with the version 1.1.

In my case I didn't run the Appium Desktop but I faced a similar error while trying to run WinAppDriver through Node.js code.
Take a look at the following.
let WindowsDriver = require('appium-windows-driver').WindowsDriver;

let defaultCaps = {
  platformName: 'Windows',
  deviceName: 'WindowsPC',
  app: 'C:\\Windows\\System32\\notepad.exe'
};

async function main() {
  let driver = new WindowsDriver();
  await driver.createSession(defaultCaps);
  let element = await driver.findElement('//*[@ClassName="Edit"]');
//  element.SendKeys("This is some text");
}
main();

Error screenshot is given below, it also says re-run install.

The Appium Deksop didn't open on my Windows 10 machine, I tried downloading multiple versions. I hope it works for you. WAD UI Recorder worked fine on my machine though.

For Appium Desktop, you may go back to "the server is running" to see which WinAppDriver you should install.

@naeemakram . For you question, it's because this PR: https://github.com/appium/appium-windows-driver/pull/60
appium-windows-driver 1.7.0 or above is using  WinAppDriver 1.2RC

I'm using an extension to my browser to test API calls as needed.  RESTer on Firefox is mostly adequate.  Do be warned:  RESTer saves the results of all calls, so if you are using a root session and dump source, all of that data is now part of the source until you delete it.

You could talk to the accessibiliyInsight guys and get them to implement a Xpath session, I've tried but they said it was not a priority, but if it get from you guys it would be carry more weight. And this is to replace inspect.exe in VisualStudio2020


implement erc721 component

PR base on this issue: #4

I'm merging this although it is an incomplete work in progress because it's taking the contract in the right direction. Would love for you to finish this! Getting closer!

I'm merging this although it is an incomplete work in progress because it's taking the contract in the right direction. Would love for you to finish this! Getting closer!

absolutely,
create the new issue with the description and Assign me


SemaphoreGuard::acquire_arc busy waits since 2.7.0/#34

The problem is &mut this.listener.take() here:
https://github.com/smol-rs/async-lock/blob/f738cfd068ec3e1a6d2de9785571ce1b52b34871/src/semaphore.rs#L231-L239
Since this borrows a temporary expression, *listener = Some(... does not actually write to this.listener, so the Some arm is never taken and the function can never return Poll::Pending, instead busy waiting until try_acquire_arc succeeds. In my program this seemed to cause an indefinite hang.
The line should just be match &mut this.listener like it is in the non-Arc acquire.

Thanks for the catch! Do you mind filing a PR?


Allow using useJsonForm hook in production

Summary
Similar to what has been done to useForm hook https://github.com/tinacms/tinacms/pull/520

Hey @smashercosmo, do you mean the useJsonForm hook from gatsby-tinacms-json?

Yes

Right. Unfortunately Gatsby sites can't be edited in production.
The main reason is that Gatsby does a significant amount of processing at build time that can't be replicated in a production Gatsby site. As such, the Gatsby pages cannot be reliably be rebuilt from content changes.
Another reason is that gastby-tinacms-git plugin requires a node server to write changes to the file system and make commits. This is not possible in the static production environment of a Gatsby site. Since gastby-tinacms-json is built on gastby-tinacms-git, it also cannot function.

That's sad to hear :( I was hoping to replace netlify-cms (which allows editing in production) with tinacms. But anyway, thx for an explanation.


Step for tweeting

The bot should be able to tweet about its actions, using its account: https://twitter.com/charlesmikes

done

@amihaiemil the only puzzle #243 is solved here.


Implementation of the individual immunity model

Adds a delay parameter to Strain and runs the simulation for each time step, manually increasing the number of infected at the corresponding delay time. I think this breaks the count_deaths function (not sure why)
Oops, wrong PR - will update description later

There are is some commented code that would be good to delete


Optimizations

Change fastcgi client - cf #12 / need Adoy to merge changes (cf https://github.com/adoy/PHP-FastCGI-Client/pull/8)
Add apc:regexp:delete to delete specific keys in apc user cache

Awesome work, Thanks!
Closes #12

thanks, but how did you manage with the fastcgi changes ? you've done the update yourself ?

Fixed on 1.8.1

Actually fixed on 1.9.0, this was a dumb update from my part.
Once the PR is merged, we can revert to old status.


Expect value and actual value need to be exchanged in ScheduleMessageServiceTest#testCorrectDelayOffset_whenInit line 69

The issue tracker is ONLY used for bug report(feature request need to follow RIP process). Keep in mind, please check whether there is an existing same report before your raise a new one.
Alternately (especially if your communication is not a bug report), you can send mail to our mailing lists. We welcome any friendly suggestions, bug fixes, collaboration and other improvements.
Please ensure that your bug report is clear and that it is complete. Otherwise, we may be unable to understand it or to reproduce it, either of which would prevent us from fixing the bug. We strongly recommend the report(bug report or feature request) could include some hints as the following:
BUG REPORT

Please describe the issue you observed:

What did you do (The steps to reproduce)?

Expect value and actual value need to be exchanged in ScheduleMessageServiceTest#testCorrectDelayOffset_whenInit line 69

What did you expect to see?

What did you see instead?

Please tell us about your environment:

Other information (e.g. detailed explanation, logs, related issues, suggestions how to fix, etc):

FEATURE REQUEST

Please describe the feature you are requesting.

Provide any additional detail on your proposed use case for this feature.

Indicate the importance of this issue to you (blocker, must-have, should-have, nice-to-have). Are you currently using any workarounds to address this issue?

If there are some sub-tasks using -[] for each subtask and create a corresponding issue to map to the sub task:

sub-task1-issue-number: sub-task1 description here,
sub-task2-issue-number: sub-task2 description here,
...

#3647

Merged


Optimization - replace typedefs in Ast.hx with @:structInit classes

This can boost performance on static targets, since typedefs are compiled down to dynamic objects, which are known to be slow.

i dont really understand why CI is failing, it seems like it doesnt even relate to my changes (it fails while trying to install haxe nightly)

I have not seen that happen before, hopefully it's just a Haxelib server or github one time issue

ill turn this into a draft, and revisit this when its more relevant (for example, when go2hx is advanced enough that it needs to start worrying about optimizing for speed)

ill turn this into a draft, and revisit this when its more relevant (for example, when go2hx is advanced enough that it needs to start worrying about optimizing for speed)

There is also a technical limitation of this pr. Haxe's json does not support json decoding to a Class. Json is the communication language between the Golang part of the compiler to the Haxe part.
The introduction of the compiler being able to be compiled into nodejs, has made the json decoding extremely fast, and I have found no better alternatives.
If no new developments are to be brought up I think we should close this. @ShaharMS  I'm interested in your thoughts, as ell as @elliott5 .

I look forward to the time when we can compile the Go component of the system (go4hx)  into Haxe so that code can be integrated into a pure Haxe code-base. At that point using JSON between the Go & Haxe parts of the Go->Haxe translation process will not be required, and the ideas in this PR could be implemented ... unfortunately that exalted future state of this project is still some way off as I write these words.

Thanks for your input :). Iirc, the initial goal of this pr was to boost go2hx without making a mess by making the typedefs structInit classes. I thought that would let us keep everything the same, but looks like it wouldn't...
If implementing this won't give any real performance increase, or even irrelevant for the current state of the project, I think this shouldd be closed.


Use Scalafmt in intellij

The fact this was removed was my bad, but I can probably reinsert it in #2027
However, My IJ keeps editing this file no matter what I do. This is an intellij project file, meaning new contributors or anyone else using IJ may end up editing it automatically too. On top of this, running test:scalafmt is what people should be doing anyway.
Can we instead add some notes on setting up the right headers sorting instead of inserting project specific files? I don't think IJ files should ever be pushed, especially because the editor bugs the f out all the time, meaning I have to reimport the project by deleting the .idea file, but now it would force me to delete my whole fork and then pull it again.

To add to this:
I'm on the latest idea. Your formatter option is being automatically deleted by IJ. When I Select scalafmt formatter, I get
  <option name="FORMATTER" value="1" />

I do not expect their xml to be stable across intellij versions.
I think we should remove the idea project.xml, and instead make a note on the README about contributing with IntelliJ idea and sorting the imports correctly.

Ugh, it has worked well for me so far, even with fresh clones of the project, but I don't have a problem with removing the IJ files.

@aeons look at #2027 or #2026 . I don't edit these files myself, even after updating IJ messes with them every time :/.

I mean, if you know any IJ settings so it doesn't edit that file automatically I'm all ears. I just don't know any.

I would love to understand why this is happening to @jmcardon and not any of our other IntelliJ users.  I think having the project setting is nice, because before we had it, we had a lot of diff noise from imports because of IntelliJ's idiosyncratic default.

IntelliJ got word that Jose got a Haskell job, now he's merely paying for his sins. I say let's keep the setting and let him suffer.

@SystemFw LOL.
@rossabaker I'd love to know who else is actually PRing on intellij recently. Most of our PRs are between 4-5 people (3 of which are in this chat) and I'm privy to the information yall use emacs.

My instance of IDEA is doing the same @jmcardon's is and I'm always on the latest version. It does set this option whenever you confirm using Scalafmt instead of default IJ format.

:confused: Not counting Travis CI, GitHub reports 19 unique authors in the last month.
That seems like a defect in IntelliJ, given that scalafmt doesn't, and won't, organize imports.  Has anybody reported this?
In the meantime, I'm fine deleting this, but I'm frustrated by the merge conflicts it causes.  We could start calling out violations on code review, but that's just busywork.  Is there another technical solution anyone can think of?

@rossabaker I think the simplest is just a page indicating how to configure your IJ, when you're creating a PR from it.
I think that moving forward this will happen more often, as IJ evolves and their xml schema is not stable. I don't know many repositories out there with ide-specific files committed for this very reason (eclipse as an example is a nightmare about this).

I've done this successfully on teams with a uniform environment, but if IntelliJ is really this sloppy, I agree that it's a losing battle.  I'd be in favor of removing this and adding to the CONTRIBUTING.md.

To be fair, I haven't had time to do much scala since shortly after the scalafmt support in IJ was released, so they might have changed the format.
As I said I'd be ok with removing the config and adding some documentation on how to set up IJ.


Toolbox harmonised readmes

please merge PR relating to #207 prior to this one
need input on commits

https://github.com/theodi/bothan/commit/48ba0374addbde7e7c1f4dd008dee77d0240259a
https://github.com/theodi/bothan/commit/bb18d4f30d27aae7d8b347637cd02e005c12e7e7

Coverage remained the same at 88.196% when pulling 0b078e7f84e1af12e910140f4a378e66c96b1b15 on toolbox-harmonised-readmes into 6cadc5036548ad1cd7ff243c6a73c344d803810d on master.


Collapse identical routes into one "card"

Personally, I think Android looks better than iOS's. Specifically how Android collapses the same route into one card displaying the next couple of departures versus how iOS dumps all the data into a table. It's better than skimming through a table of unsorted routes just to find the next departure.

We don't have to follow Material Design, like Android, but take a similar approach. Idk, but these are my 2 cents to make iOS more intuitive and on-par with the droids.
@dotTechnoPath @ualch9

Thanks for the thoughts. Please don't tackle this yet.
Sent from my iPhone

On Jan 14, 2017, at 1:52 AM, Alan Chu<EMAIL_ADDRESS>wrote:
Personally, I think Android looks better than iOS's. Specifically how Android collapses the same route into one card displaying the next couple of departures versus how iOS dumps all the data into a table. It's better than skimming through a table of unsorted routes just to find the next departure.
We don't have to follow Material Design, like Android, but take a similar approach. Idk, but these are my 2 cents to make iOS more intuitive and on-par with the droids.
@dotTechnoPath @ualch9
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Based on user feedback I have mixed feelings about this design myself.
Some thoughts below:

Some users definitely prefer one to the other - on Android you can toggle
back and forth between sorted by ETA and sorted/grouped by route by tapping
on sort button at top of screen. This definitely isn't obvious to some
users. Default is the old ETA-sorted view, although I think there is a bug
on some devices which has defaulted users to route-sorted view - or user
error in switching. Either way I've gotten complaints from some users who
couldn't figure out how to get to the ETA sorted view (despite tutorial
screen that explains this).
One purpose of the route-sorted view was to show scheduled times to users
separate from estimated times to help explain the difference. In retrospect
I'm not sure how successful that has been.  One item that bugs me is that
we are showing clock times on ETA sorted view that represent the estimated
arrival time based on real-time info, but on the route sorted view we show
clock times that are scheduled times. Part of me wants to change route
sorted clock times to be real-time as well, but so far I've shied away from
this major change given that users seem to have settled into it.

So I'd definitely recommend introducing this route grouped view as an
option but not the default. And you might want to think closely about the
clock times shown on this view in terms of keeping them consistent with the
original view.
On Jan 14, 2017 11:43 AM, "Aaron Brethorst"<EMAIL_ADDRESS>wrote:
Thanks for the thoughts. Please don't tackle this yet.
Sent from my iPhone

On Jan 14, 2017, at 1:52 AM, Alan Chu<EMAIL_ADDRESS>wrote:
Personally, I think Android looks better than iOS's. Specifically how
Android collapses the same route into one card displaying the next couple
of departures versus how iOS dumps all the data into a table. It's better
than skimming through a table of unsorted routes just to find the next
departure.
We don't have to follow Material Design, like Android, but take a similar
approach. Idk, but these are my 2 cents to make iOS more intuitive and
on-par with the droids.
@dotTechnoPath @ualch9
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/OneBusAway/onebusaway-iphone/issues/937#issuecomment-272635818,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA4pLdFegVZSTk7ZddelBo-IEKOjbO1bks5rSPtJgaJpZM4LjlLI
.

Oh,  and that screenshot is older - here's the most recent view with a few
tweaks:
On Jan 14, 2017 12:13 PM, "Sean Barbeau"<EMAIL_ADDRESS>wrote:

Based on user feedback I have mixed feelings about this design myself.
Some thoughts below:

Some users definitely prefer one to the other - on Android you can
toggle back and forth between sorted by ETA and sorted/grouped by route by
tapping on sort button at top of screen. This definitely isn't obvious to
some users. Default is the old ETA-sorted view, although I think there is a
bug on some devices which has defaulted users to route-sorted view - or
user error in switching. Either way I've gotten complaints from some users
who couldn't figure out how to get to the ETA sorted view (despite tutorial
screen that explains this).
One purpose of the route-sorted view was to show scheduled times to
users separate from estimated times to help explain the difference. In
retrospect I'm not sure how successful that has been.  One item that bugs
me is that we are showing clock times on ETA sorted view that represent the
estimated arrival time based on real-time info, but on the route sorted
view we show clock times that are scheduled times. Part of me wants to
change route sorted clock times to be real-time as well, but so far I've
shied away from this major change given that users seem to have settled
into it.

So I'd definitely recommend introducing this route grouped view as an
option but not the default. And you might want to think closely about the
clock times shown on this view in terms of keeping them consistent with the
original view.
On Jan 14, 2017 11:43 AM, "Aaron Brethorst"<EMAIL_ADDRESS>wrote:
Thanks for the thoughts. Please don't tackle this yet.
Sent from my iPhone

On Jan 14, 2017, at 1:52 AM, Alan Chu<EMAIL_ADDRESS>wrote:
Personally, I think Android looks better than iOS's. Specifically how
Android collapses the same route into one card displaying the next couple
of departures versus how iOS dumps all the data into a table. It's better
than skimming through a table of unsorted routes just to find the next
departure.
We don't have to follow Material Design, like Android, but take a
similar approach. Idk, but these are my 2 cents to make iOS more intuitive
and on-par with the droids.
@dotTechnoPath @ualch9
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/OneBusAway/onebusaway-iphone/issues/937#issuecomment-272635818,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA4pLdFegVZSTk7ZddelBo-IEKOjbO1bks5rSPtJgaJpZM4LjlLI
.

So I'd definitely recommend introducing this route grouped view as an option but not the default. And you might want to think closely about the clock times shown on this view in terms of keeping them consistent with the original view.

Notably, iOS does have this feature. I introduced it early(?) last year. It's hidden under filtering and sorting. I think there are two immediate improvements that can be made:

Better discoverability of the route sorting/filtering view controller.
Improved UI for grouped departures.

In both cases, we will need to start with a design before moving on to implementation.

I think we're good here. Please reopen on OBAKit if you disagree.


Feature Request: Generate directives with ElementRef already imported or add it as an option to the command

Please provide us with the following information:

OS?

Windows 7, 8 or 10. Linux (which distribution). Mac OSX (Yosemite? El Capitan?)

Not Applicable
Versions.

Please run ng --version. If there's nothing outputted, please run in a Terminal: node --version and paste the result here:

Not Applicable
Repro steps.

Was this an app that wasn't created using the CLI? What change did you do on your code? etc.

Make:  ng g d some-directive-name or ng g d some-directive-name --eleref=true generate the following
import { Directive, ElementRef } from '@angular/core';

@Directive({
  selector: '[appSomeDirectiveName]'
})
export class SomeDirectiveNameDirective {

  constructor(
    public eleRef: ElementRef
  ) {  }

}

The log given by the failure.

Normally this include a stack trace and some more information.

Not applicable.
Mention any other details that might be useful.
Not applicable.

Thanks! We'll be in touch soon.

This doesn't strike me as something super important tbh. It's trivial to add that code.


Contextual styling, e.g. button color within toolbars

I'd like to target a style at all buttons within toolbars.  I'm curious what the suggested way to do this would be.  Any insights would be helpful, thank you.

A few ways I can think of:

Create a ToolbarButton component.
Create a new Toolbar component (wrapping the one from react-toolbox) that loops through each of its children, and appends a className/theme prop to them. That way the toolbar could control the look of the buttons.
Target and style child buttons in the toolbar css (this feels a bit hacky though)


How to import this new version?

Setup info

Workflow name:
Workflow version:
Alfred version:
macOS version:

Description of issue

Debugger output
Open the [debugger](http://support.alfredapp.com/workflows:debugger), set the log output to “All Information”, and post the output here, replacing this text but keeping the backticks.

I was able to, but everything fails. Why ?

There’s zero information on this issue.


ORC-1416: Upgrade Jackson dependency to 2.14.2 in bench module

What changes were proposed in this pull request?
This PR aims to upgrade Jackson dependency to 2.14.2 in bench module.
Why are the changes needed?
To match with Apache Spark 3.4.0.
How was this patch tested?
Pass the CIs.
Closes #1476

cc @williamhyun

Also, cc @deshanxiao since he is the author of ORC-1414

#1473

+1
Thank you @dongjoon-hyun

Thank you, @deshanxiao and @williamhyun .


wrong number of type arguments in impl_downcast! with std::io::Result

Hi,
I just walked into an error where I could not even compile your basic examples (between other code from me).
This code should reproduce the error:
#[macro_use]
extern crate downcast_rs;

use downcast_rs::Downcast;
use std::io::Result;

pub trait Base: Downcast {
}
impl_downcast!(Base);

The compiler aborted with this error:
error[E0244]: wrong number of type arguments: expected 1, found 2
  --> master/src/device/mod.rs:38:1
   |
   | impl_downcast!(Device);
   | ^^^^^^^^^^^^^^^^^^^^^^^ expected 1 type argument
   |
   = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)

Removing the import of use std::io::Result and using just use std; instead fixes the error.
If you can confirm this you might update the documentation with a hint to this? I can imagine that Result is often enough used to justify a mention.

Sorry about that. Thanks for reporting! Will push 1.0.3 soon with the fix.


Artifact missing in mvnrepository: org.terracotta/management-common-resources-v2

Hi,
I'm not sure whether this is the correct forum to report this issue. I'm unable to find the following artifact in mvnrepository.com:
http://mvnrepository.com/artifact/org.terracotta/management-common-resources-v2
This seems to be a required dependency when I include management-ehcache-v2 dependency in my pom.
Any idea? Any suggestion or help will be greatly appreciated.
Thanks,
-Gnana

@anthonydahanne : any idea ?

Quick update: I was able to find this jar in the following maven repo:
http://jcenter.bintray.com/
So I added this to our nexus.


ES6 import in Node

Imports with require are a mess. It's time to move to ES6 imports if possible.
https://www.geeksforgeeks.org/how-to-use-an-es6-import-in-node-js/


Window build - agora-iris.log error with permission denied

Describe the bug
Permission denied of logging when build the installer of window
To Reproduce
Steps to reproduce the behavior:

Create window build with: flutter pub run msix:create
Installing the build on window
The error of permission denied as image attached

Thanks for reporting, may I ask is it causing crashes?

Yes, it it crashing with the logs above.

@littleGnAl Could you please help to look into this issue soon, i am still waiting for releasing the window app. Thank you so much.

I am so sorry that I have no experience publishing the Windows app, but I just wonder why the AgoraRtcScreenSharing.exe has been executed directly.

@littleGnAl The error occurs because we do NOT have permission for iris-logger on the WorkSpace folder when installing. Could we change this logs to others path? Thank you.

@littleGnAl Could you pls help on this one?

Sorry for the late response, we are working on this fix.

After a little dig into the msix package, the AppxManifest.xml file will be created by default, and the Executable value will be set the first .exe file name https://github.com/YehudaKremer/msix/blob/f003af4ead7f536259a44985232412d45ce37714/lib/src/configuration.dart#L250, it will be set to AgoraRtcScreenSharing.exe in this case.
So if you are not using the screen sharing feature, you can chagne the Executable value to the actual .exe file name should be worked for this case.

and maybe this link is helpful
https://github.com/YehudaKremer/msix/issues/120

@littleGnAl Thank so much for your information, the app is using the Share Screen feature.

This should be fixed on agora_rtc_engine: ^6.0.0.


'Server' no longer exported

After upgrading from v1.7.3 of @overnightjs/core.
My TypeScript import statement:
import { Server } from '@overnightjs/core';

gives the error:

Module '"../node_modules/@overnightjs/core/lib"' has no exported member 'Server'.ts(2305)

Tracing this back to @overnightjs/core/lib/index.d.ts the error is:

Could not find a declaration file for module './Server'<EMAIL_ADDRESS>implicitly has an 'any' type.ts(7016)

Downgrading to v1.7.2 fixes the issue.
@overnightjs/core: 1.7.3
typescript: ~3.8.3

let me know if 1.7.4 fixes the issue for you

Fixed. Thank you. Excellent response time.


Add windows version of ci

Config autocrlf to input on Windows
start epmd in background

Hey @howard0su! I'm not sure if maintaining a Windows workflow is that useful, the OS specific tests are mostly with starting the runtime, but that isn't really reliable, because it usually fails because of other reasons (like misconfiguration). @josevalim thoughts?

we still have many test cases so far due to the difference of file system handling. We should fix it. This PR is not yet ready as it always success no matter how many cases failed.

I think it's all good now. My only concern is that the total CI time goes from ~1m to ~2m (mostly because installing Elixir with erlef/setup-beam on windows takes 1m).

Nice Job!!

Your call @jonatanklosko!

Needed to change a couple timeouts, but runs seem more reliable now. I don't think it's worth running it on every PR, due to a bit longer run time and possible false negatives, so I made the job to run conditionally only on main. This way we can catch regressions without additional overhead in PRs :)


Can't build oni for development on linux

Followed all steps on the build section of the readme.
After running npm link tried to run oni but nothing happens.
Even tried running oni.sh but it says that my platform is not supported.

I identified a local issue with my electron installation

Glad you got it working!


TradingView Subscriptions

Adding a subscription to the TradingView chart candles. The latest candles is requested every 10 seconds and the chart will update with new data.
Description

Adds a subscribeBars function in the DataFeed for the TV chart
Adding some state variables to track intervals (need to cancel when settings change)

Related issue

#798

Motivation and Context
The current chart is not responsive to oracle updates. This results in disconnected prices between market details, position card, and tradingview chart.
How Has This Been Tested?
Open the page and wait a long time (10-15 minutes) for oracle updates. Made sure that the chart updates each time the oracle updates, and make sure that other responsive things fire (position card, market details, trading history)

@el0x1 Tagging you for visibility, I added polling to grab new candles


Rebuild for tapi 1300

Rebuild after https://github.com/conda-forge/tapi-feedstock/pull/10, hopefully solving https://github.com/conda-forge/rust-feedstock/issues/204

@isuruf, given
https://github.com/conda-forge/cctools-and-ld64-feedstock/blob/94558194fa61b528469c236ad38930ad8f0001da/recipe/meta.yaml#L125-L126
current ld64 builds have a tapi >=1100.0.11,<1101.0a0 constraint, so if we want to use the newer builds from https://github.com/conda-forge/tapi-feedstock/pull/10, we'll need something like this PR. Since I don't know what tapi does and you merged that PR wordlessly, could you please confirm that this is the correct next step?


add UUID in LOG() in decoder (#3080)

add UUID in LOG() in decoder

Fix lint

More lint

Merged in 0e7411e


Add Dart Analyzer Action

Description
This PR adds https://github.com/invertase/github-action-dart-analyzer Action to automatically add review comments to PRs opened in this repository. I believe it will help maintainers to get better visual feedback, so less people will ignore analyzer issues due to no requirement to go through Actions logs.
Checklist
Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]).
This will ensure a smooth and quick review process.

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] My PR includes unit or integration tests for all changed/updated/fixed behaviors (See Contributor Guide).
[x] All existing and new tests are passing.
[x] I updated the version in pubspec.yaml and CHANGELOG.md.
[x] I updated/added relevant documentation (doc comments with ///).
[x] The analyzer (flutter analyze) does not report any problems on my PR.
[x] I read and followed the Flutter Style Guide.
[x] I am willing to follow-up on review comments in a timely manner.

Breaking Change
Does your PR require plugin users to manually update their apps to accommodate your change?

[ ] Yes, this is a breaking change (please indicate a breaking change in CHANGELOG.md and increment major revision).
[x] No, this is not a breaking change.

Increased time limit for Analyzer job, since it looks like 15 mins isn't enough.

Had issue with working-directory specified for added Action and this is why the job was canceled due to timeout. Finally resolved the issue and returned 15 mins limit back.

Had issue with working-directory specified for added Action and this is why the job was canceled due to timeout. Finally resolved the issue and returned 15 mins limit back.

I was trying to figure out what went wrong. Thanks for fixing.


feat: add modify-windows-iso-file task

What this PR does / why we need it:
feat: add modify-windows-iso-file task
this tasks modifies windows iso and replaces prompt bootloader with no-prompt bootloader. This helps during automation of win 11 installation.
We can't do any modifications inside iso, because by default win iso is in UDF format and read only. To extract iso the guestfish is used. After extraction, bootloader is replaced with no-prompt one. The extracted files are then packed back by xorriso. The result iso is then converted to raw format and stored back to original pvc as a replacement of original iso.
Signed-off-by: Karel Šimon<EMAIL_ADDRESS>Release note:
add modify-windows-iso-file task

/retest

/hold Need to fix one syntax err

/lgtm

/retest

/lgtm


GH-39355: [Java] Improve JdbcConsumer exceptions

Rationale for this change
This helps debug Arrow conversion errors from JDBC by exposing the JdbcFieldInfo for the related column and the ArrowType for the corresponding vector.
What changes are included in this PR?
A new JdbcConsumerException which is thrown by the CompositeJdbcConsumer while consuming data for a specific vector.
Are these changes tested?
N/A
Are there any user-facing changes?
Users can now catch JdbcConsumerExceptions and extract the related ArrowType and JdbcFieldInfo from it for debugging.

Closes: #39355

Thanks to @aiguofer for this enhancement. Would it be possible to add a unit test to cover these new exception improvements?

@aiguofer agreeing with @davisusanibar here.
It would be better to add a test case which is failing as expected and verify the exception message as an assertion.
Also just curious would this require documentation update?

@davisusanibar @vibhatha It would certainly be great to have tests for consumer! unfortunately there's not much prior art regarding this. I'm not very familiar with the test suite in general and this would likely require mocking a ResultSet along with the corresponding ResultSetMetaData in order to properly test this, which seems like a lot of work.

Also just curious would this require documentation update?

It would be good to add a @throws in the docstring for ArrowVectorIterator. Actually, this might be considered a breaking change since people may expect SQLException currently. (And it's documented in sqlToArrowVectorIterator.)
Possibly we should extend SQLException instead?

Possibly we should extend SQLException instead?

+1

For testing, we do use hsqldb in the suite to integration test against an actual database (instead of mocking everything). That said mocking may be easier here overall

should we include it in this PR itself or should we create follow up?

Sorry all, I'm just getting back from break. Hmm, I think it might be better to add a throws instead. The exceptions are not always a SQLException. For example, in our case what prompted this PR was this redacted stack trace:
java.lang.RuntimeException: Error occurred while getting next schema root.
	at org.apache.arrow.adapter.jdbc.ArrowVectorIterator.next(ArrowVectorIterator.java:181)
        ...
Caused by: java.lang.RuntimeException: Error occurred while consuming data.
	at org.apache.arrow.adapter.jdbc.ArrowVectorIterator.consumeData(ArrowVectorIterator.java:117)
	at org.apache.arrow.adapter.jdbc.ArrowVectorIterator.load(ArrowVectorIterator.java:159)
	at org.apache.arrow.adapter.jdbc.ArrowVectorIterator.next(ArrowVectorIterator.java:177)
	... 10 common frames omitted
Caused by: java.lang.UnsupportedOperationException: Decimal size greater than 16 bytes: 17
	at org.apache.arrow.vector.util.DecimalUtility.writeByteArrayToArrowBufHelper(DecimalUtility.java:175)
	at org.apache.arrow.vector.util.DecimalUtility.writeBigDecimalToArrowBuf(DecimalUtility.java:136)
	at org.apache.arrow.vector.DecimalVector.set(DecimalVector.java:365)
	at org.apache.arrow.adapter.jdbc.consumer.DecimalConsumer.set(DecimalConsumer.java:79)
	at org.apache.arrow.adapter.jdbc.consumer.DecimalConsumer$NullableDecimalConsumer.consume(DecimalConsumer.java:101)
	at org.apache.arrow.adapter.jdbc.consumer.CompositeJdbcConsumer.consume(CompositeJdbcConsumer.java:46)
	at org.apache.arrow.adapter.jdbc.ArrowVectorIterator.consumeData(ArrowVectorIterator.java:106)
	... 12 common frames omitted

Ok, thanks. Then I think just documenting it in @throws is sufficient.

@lidavidm done!


Add chunk() to Fluent Strings

Adds the chunk() method to fluent strings allowing a string to be "chunked" by a specified length and returning a collection of those chunks.
Example Usage
Str::of('foobarbaz')->chunk(3); // Returns collect(['foo', 'bar', 'baz'])

This is particularly useful when chaining additional methods.
Str::of('FooBarBaz')->lower()->chunk(3)->implode('-'); // Returns 'foo-bar-baz'

I decided to just open a PR instead of starting a discussion first because it was such a minor (non-breaking) change. Totally understand if this is not wanted.

I think it would be better to use mb_str_split, because str_split can't handle multibyte strings correctly:
   str_split('abc', 3)  // ["abc"]
mb_str_split('abc', 3)  // ["abc"]

   str_split('고마워', 3) // ["고", "마", "워"]
mb_str_split('고마워', 3) // ["고마워"]

   str_split('고마워', 2) // [b"ê³", b" ë", b"§ˆ", b"ì›", b"Œ"]
mb_str_split('고마워', 2) // ["고마", "워"]

@bonzai Sure, I'll update that.


Proposal: Block Decorations

The aim of this document is to write down some of the ideas @nathansobo and I discussed over the past days. I don't think we should implement everything herein proposed in one single, big step. Still, I feel like it's valuable to have a place to discuss the API and to share these ideas with the :globe_with_meridians:.
As of today, Atom doesn't provide a way to create decorations that affect screen rows layout. More specifically, we think it would be :cool: to expose an API that allows users to create something like the following:

You can notice how lines of text break when a block decoration begins and how they resume later when the decoration ends. This hypothethical abstraction would cover several scenarios for package authors, among which:

Show diffs;
Show previews;
And, more generally, provide a richer experience within the editor;

This primitive would cover only decorations in between screen rows; that is, users won't be able to insert inline elements between s inside a screen row by using a block decoration.
API
The code for using this API could look like the following:
let div = document.createElement("div")
let marker = editor.markScreenPosition([7, 0], {invalidate: "never"}) // is "never" the right invalidation strategy?
let decoration = editor.decorateMarker(marker, {type: "block", item: div})

I am also thinking to provide a shorthand for the above code:
editor.addBlockDecorationBeforeScreenRow(7, document.createElement("div"))

But I guess I'd like to see how this gets used before dealing with this kind of extra details, although I prefer the latter version more in terms of readability. :book:
Also, I feel like we might take this a bit further by enforcing a better separation of concerns between the model and the view, by avoiding to pass an element as the item when decorating the marker and using the ViewRegistry instead. This seems to stray from how we implemented other decoration APIs, so take this thought with a grain of salt.
Performance
We would need to know the whole content height in advance in order to show the appropriate vertical scrollbar. Right now, we measure a dummy line's height and calculate dummyLineHeight * model.getScreenLineCount(); if we introduced this kind of custom content, however, we'd need to measure block decorations upfront and then calculate height like: dummyLineHeight * model.getScreenLineCount() + measuredBlockDecorationsHeight. When having lots of these, loading/refreshing them could become problematic.
On the core side, the scrollbar problem seems the only issue preventing block decorations to be fetched, rendered and measured incrementally (as we do for other decorations); we might even argue that people are used to this sort of progressive content loading on the web, thus making this a non-problem but I'd :heart: to have some more feedback on this. For example, what about minimap? I would think that it will need to know block decorations' height in advance rather than as the user scrolls.
Another optimization tactic we could employ is to split up the measurement tasks in chunks to be executed across multiple animation frames.
To tell the truth, I believe we should just go for the "measure everything upfront" approach first, see how that feels and then re-iterate on that later (if needed). :racehorse:
Styling
Because of Shadow DOM, we will have to insert elements outside the shadow root and find a way to teleport them in the right spot inside the editor content. The most straightforward way of doing this could be the following:
<atom-text-editor>
  <#shadow-root>

      <content select=".block-decoration-before-screen-row-1"></content>

      <content select=".block-decoration-before-screen-row-4"></content>

  </#shadow-root>

</atom-text-editor>

UX
When a block decoration above the current scroll area changes its height, we need to make sure to adjust the current scroll position seamlessly, so that the editor doesn't scroll down when the user is, for example, editing something.
Question: What about the gutter? Should we have block decorations in there as well?
Naming
Should we consider other names for this API? "Block decoration" seems a pretty sensible choice to me, as it seems to reflect CSS' semantics for elements with a display: block style. What do you think? :bulb:
Feedback is super welcome! :sparkles: :bow:
/cc: @nathansobo @maxbrunsfeld @atom/feedback

:heart_eyes: Packages like https://atom.io/packages/quick-editor would benefit a lot.

:+1: Also https://atom.io/packages/merge-conflicts, and nuclide, and probably 1000 other things.

Can't :+1: enough this proposal!
I'm trying to make a package to do "quick commits" and other git commands in Atom in a unubtrusive way, and also to show diff from one specific file in all its commits. Right now, I'm creating a "read-only" view and hard-wiring things, using "ObserveElement" and other tricks to hide line numbers from some places and change line number from others. This would remove all this magic!

:+1: Yes, this would be a great feature! I would like to build a package that does inline evaluation similar to LightTable. See https://discuss.atom.io/t/inline-evaluation-lighttable-swift-style/12221/12 for some additional discussion. Also https://github.com/JunoLab/atom-ink would benefit a lot as well.

Thank you so much, really looking forward to this for Hydrogen, script, and other REPL packages.


User can create an account

[ ] EXPRESS: POST auth/signup
[ ] EXPRESS: POST auth/login
[ ] ***Refactor code to allow user to stay logged in upon page refresh
[ ] REDUX: Refactor authReducer to include other signup information
[ ] REACT: Refactor AuthForm Component to include other signup information
[ ] CSS: Style sign up/log in page

[ ] Check if logged-in user can revisit cart


Weird Depiction of Some Molecules after Compute2DCoords

Hi all,
I have observed that in v 2015.09.2 the depiction of some molecules becomes really distorted after Compute2DCoord() is called on them. Can this be fixed?
Here is an excample (also as Notebook in this Gist):
This renders fine:
sm = "[#6]1:[#6]:[#6]2:[#6]3-[#6]-[#16]-[#6]-[#6]-[#6]:3:[#7](:[#6]:2:[#6]:[#6]:1)-[#6](-[#6])=[#8]"
mol = Chem.MolFromSmarts(sm)
mol

But after generating the 2D coordinates, it looks weird:
mol.Compute2DCoords()
mol

Many thanks in advance for your help!
Kind regards,
Axel

Hi Axel,
There are a number of problems with rendering molecules created from SMARTS, most have to do with the fact that properties haven't been perceived.
You should be able to get decent rendering like this:
sm = "[#6]1:[#6]:[#6]2:[#6]3-[#6]-[#16]-[#6]-[#6]-[#6]:3:[#7](:[#6]:2:[#6]:[#6]:1)-[#6](-[#6])=[#8]"
mol = Chem.MolFromSmarts(sm)
mol.UpdatePropertyCache(False)
Chem.SanitizeMol(mol,sanitizeOps=Chem.SANITIZE_SYMMRINGS|Chem.SANITIZE_SETCONJUGATION|Chem.SANITIZE_SETHYBRIDIZATION)
mol.Compute2DCoords()
mol

You can write that out a bit longer if you like:
sm = "[#6]1:[#6]:[#6]2:[#6]3-[#6]-[#16]-[#6]-[#6]-[#6]:3:[#7](:[#6]:2:[#6]:[#6]:1)-[#6](-[#6])=[#8]"
mol = Chem.MolFromSmarts(sm)
mol.UpdatePropertyCache(False)
Chem.GetSymmSSSR(mol)
Chem.SetConjugation(mol)
Chem.SetHybridization(mol)
mol.Compute2DCoords()
mol

Hi Greg,
thanks for the lightning-fast answer. Once again you saved my day!
I had tried SanitizeMol, but without using UpdatePropertyCache before and not specifying any flags and so I always ended up with: Sanitization error: Explicit valence for atom # 2 C, 5, is greater than permitted.
Is this something for the Cookbook? To be honest, it has driven me crazy for the better part of yesterday.
Many thanks again!
Kind regards,
Axel

A cookbook entry on how to successfully display molecules created from SMARTS would indeed be useful.
Are you volunteering to write it? ;-)

Yeah, I will prepare something, since I brought it up and have not contributed anything useful for a while...
Now I have to get back to the lab to my POCl3-reaction workup!
Kind regards,
Axel


Refactor exports to return Stack instead of Output[Exports]

Final value returned from a Besom program (Exports) is currently expected to arrive wrapped in Output. This was done to simplify final for-comp required for evaluation of all related resource constructors. This however messes up the dry run results when a dynamic Output is interwoven into the final for-comp because of the short-circuiting logic of dry run handling. To solve this a new case class called Stack has to be defined and the main function's signature has to be changed from Context ?=> Output[Exports] to Context ?=> Stack. Stack will have to contain two fields: exports (the old mechanism is to be used here) and dependsOn which could be a vararg to take all the resources that are to be created in this stack but aren't used for exports directly.

yay, done!


[DEVX-1553] Add Code field

Add code field to be able to capture test code.

@mhan83 Yup, the intention was to be able to attach the code to the test, as Cypress provides it, and then be able to display the actual test-code in the UI (can be compared to selenium commands that are displayed).
While I agree a string is maybe not enough structured for a test code, this is the only way cypress provides that, and currently other frameworks don't look to provide it. It can be enhanced by splittings the lines and/or providing a more complete object that is likely to be more-future proof.
For your last question, I guess that we want. As the test is carrying the information for the test passing/failing, this seems the best location to store that piece of code.


memory error

Hi and thank you for this amazing tool
I want to crawl a big website like 1,000,000 link, when i execute the cmd and after like 2 days i get an error about memory limit.
If you can add the option to create a file after every 50,000 crawled not until the end.
Or if is there any other solution that can help?
Thank you

#53 might be something that could solve this.


Fixes whitespace lint error

Closes #212
This dash was causing a whitespace problem which causes helm lint to fail.
Before
$ helm lint awspca/aws-privateca-issuer

==> Linting awspca/aws-privateca-issuer
[INFO] Chart.yaml: icon is recommended
[ERROR] templates/rbac.yaml: unable to parse YAML: invalid Yaml document separator: apiVersion: rbac.authorization.k8s.io/v1

Error: 1 chart(s) linted, 1 chart(s) failed

After
$ helm lint awspca/aws-privateca-issuer

==> Linting awspca/aws-privateca-issuer
[INFO] Chart.yaml: icon is recommended

1 chart(s) linted, 0 chart(s) failed

Error: 1 chart(s) linted, 0 chart(s) failed

Signed-off-by: Kevin<EMAIL_ADDRESS>

Tests have failed.  Thanks for bearing with us!


Added linting for DC/OS commits.

This commits adds a configuration file for the pre-commit
git hook lifecycle management framework. It is used to
run various linting checks on all git commits.
In particular, initially we check that all commit messages
start with an uppercase letter, no line exceeds 72 characters,
that all executables have valid shebangs, and that no non-ascii
characters are introduced accidentallu.
To enable pre-commit for this repository, first pre-commit must
be installed
pip3 install pre-commit

and afterwards the following commands must be run once in the
the root folder of the git repository:
pre-commit install --install-hooks --hook-type pre-commit
pre-commit install --install-hooks --hook-type commit-msg

Subsequent changes to the linter configuration will be picked
up automatically.
For more information, visit pre-commit.com

High-level description
What features does this change enable? What bugs does this change fix?
Corresponding DC/OS tickets (required)

DCOS-ID JIRA title / short description.

Related tickets (optional)

DCOS-ID JIRA title / short description.

Checklist for component/package updates:
If you are changing components or packages in DC/OS (e.g. you are bumping the sha or ref of anything underneath packages), then in addition to the above please also include:

[ ] Change log from the last version integrated (this should be a link to commits for easy verification and review): example
[ ] Included a test which will fail if code is reverted but test is not. If there is no test please explain.
[ ] Test Results: [link to CI job test results for component]
[ ] Code Coverage (if available): [link to code coverage report]

@mesosphere-mergebot label "Ready for Review"

@mesosphere-mergebot changelog-not-required "Not a user-facing change."

@orsenthil I've added a JIRA link. The README section is already expanded to include pre-commit in the current PR, if you want more detailed instructions I'd propose opening a follow-up PR so we don't have to dismiss the existing approvals for this one.

@mesosphere-mergebot label ship-it


Question: multiple perturbations in propagation

Is it possible to add for example both atmopsheric drag and the J2 effect into the perturbations for the orbit propagation?
Maybe it is documented somewhere, but I can not find it.

Hi @WolfsSky, for that you can create a custom perturbation function that adds both effects:
def a_d(
    t0, state,
    k, J2, R
    C_D, A, m, H0, rho0
):
    return J2_perturbation(t0, state, k, J2, R) + atmospheric_drag(t0, state, k, R, C_D, A, m, H0, rho0)

can you confirm it works?

Can confirm that the RAAN and altitude are changing! Thanks a lot.
Would be handy to add this functionality I think. I am fairly new to poliastro and haven't worked a lot with Python lately, so I would not reccommend to let me do it though.

I really would like to add it to https://docs.poliastro.space/en/stable/examples/Natural and artificial perturbations.html, but I have no clue how to do this.

If you have experience with Jupyter notebooks, it corresponds to this one https://github.com/poliastro/poliastro/blob/master/docs/source/examples/Natural and artificial perturbations.ipynb

Addressing this in #691


Congrats and a simple question

Nice work! I really like it.
Just one question: Even if I set "End date" = today, i only will get data from yestarday and backwards, right?
So, it is not possible real time or data from today (for me, doesnt really matter if it is delayed)
Many thanks,

For today, adding +1 day should work. Ex. yf.Ticker("SPY", end=endDate+timedelta(days=1)). Sometimes I notice two rows with same date and one of the row has na column values. Then I add .dropna() to resolve issue.

For today, adding +1 day should work. Ex. yf.Ticker("SPY", end=endDate+timedelta(days=1)). Sometimes I notice two rows with same date and one of the row has na column values. Then I add .dropna() to resolve issue.

This is probably linked to issue #545

This is probably linked to issue #545


Limit and offset

Query log shows limit and offset is not automatically applied
I have enabled the QueryLog using DB::enableQueryLog() and executed this query
datatables(Line::all())->toJson();

The result of the query log was:
[0] => Array
        (
            [query] => select * from `lines` where `lines`.`deleted_at` is null
            [bindings] => Array
                (
                )

            [time] => 1.43
        )

The query did not contain the limit and offset. Isn't the package supposed to do that? Or did I do anything wrong?
System details

Operating System : Ubuntu 18.04
PHP Version : 7.2
Laravel Version : 5.7
Laravel-Datatables Version : 8

You are loading all data, thus paging is not applicable.
Line::all()
Use query: Line::query() instead.


HI i am using circle image view in grid view and when i change the postion by draging the image or select from gallery.

Image become invisible after changing the position in grid view and after selection from gallery.
I use notifyDataSetChanged after selection and after drag one place to other

Without any more details there's nothing I can do. Please reopen and add the relevant code snippets if still relevant.


Fixed the broken GitHub link

Perfect! Thank you @stealthanthrax :tada:!
Feel free to work on anything else in this repo. :)


[QUERY] How to compile as SO on linux?

Query/Question
How can I compile the library as .so instead of a static library .a?
Why is this not a Bug or a feature Request?
A clear explanation of why is this not a bug or a feature request?
Setup (please complete the following information if applicable):

OS: Linux
IDE : none
Version of the Library used

Information Checklist
Kindly make sure that you have added all the following information above and checkoff the required fields otherwise we will treat the issuer as an incomplete report

[ ] Query Added
[ ] Setup information Added

We currently samples for using static lib only.
However, you can create the shared lib doing:
# from root folder
mkdir build-shared
cd build-shared
cmake -DBUILD_SHARED_LIBS=ON ..
make

This will produce .so instead of .o

Thanks a lot. Maybe this is a candidate for the FAQ sections.


Enhancements to OpenAI Embedding: Batch Processing, Customer Support and Dynamic Model Selection

Summary
In the current update of the OpenAI embedding script there are new features such as batch processing, asynchronous support, dynamic model selection, and improved error handling. These enhancements are concerned with increasing the performance, flexibility, and the level of error shown to the user.

Related Issues
None on associated concerns, where proactive performance enhancement is being implemented.

Discussions
Some discussion focused on enhancing script throughput by means of batch operations and async capability.

QA Instructions
To validate the enhancements, one should perform the embedding requests in both batch and async modes.

Merge Plan
Before merge, make certain that all changes are good with different sizes of input.

Motivation and Context
This update is focused on enhancing the work of requests’ embedding and streamlines methods.

How we test:
Performance enhancements: Batch mode capability with asynchronous features.
Flexibility: Dynamic model selection.
Improved error handling: Saying the wrong thing at the wrong time.

[x] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[x] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Please delete options that are not relevant.

[x] Unit Test
[ ] Test Script (please provide)

Checklist:

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

Maintainer Checklist

[ ] closes #xxxx (Replace xxxx with the GitHub issue number)
[x] Made sure Checks passed

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Allow use of CONSTRUCT instead of DESCRIBE

This could be a configurable choice. It would avoid the problem where some endpoints don't return the “incoming” arcs.

An implementation of this is here:
https://github.com/heinlja/pubby
With documentation here:
https://svn.eionet.europa.eu/projects/Reportnet/ticket/2843#comment:18
Needs review and merge.


Team 25 Review - Add Important Key Terms to SRS

@samm82
In addition to the abbreviations, it would be good to identify and provide definitions for key words/terms that are used frequently in the SRS as stated in the LO Standards section of the rubric. This would help keep track of specialized information

Could you give an examples of key words/terms that were used frequently but not placed in the table up top


Consideration: Moving v1 to Legacy Namespace

I should have asked this a long time ago. :P
I have encountered a lot of friction in the v2 design with having to account for v1/legacy functionality.  In fact a lot of my time has been spent having to account for both it and v2 vision.  This has proved quite challenging and time-intensive.
So the thought occurs to me... how open would you be to simply moving all current components to a Legacy folder (much like what I did in the performance testing project) and deprecate the public components?  Some thoughts around this:

This gives the project insurance in case they really want v1 functionality while still being able to try v2 (and not have to lock to a particular version).
Simplify project.  Right now there is a lot of code in the project (maybe too much!) and a lot of it is due to having to consider both v1 and v2 scenarios.
This is a breaking change, though. :(  Users will upgrade to v2, and their code will not compile if they have made use of ISerializationToolsFactory at all.  They will have to update their references from ExtendedXmlSerialization.ExtendedXmlSerializer to ExtendedXmlSerialization.Legacy.ExtendedXmlSerializer (or ``ExtendedXmlSerialization.Legacy.LegacyExtendedXmlSerializer` if we wish).

The last point is why I haven't brought it up until now.  As a general, wise rule, breaking changes should be avoided if at all possible, but I am thinking since this project only has 18 stars at the moment, maybe it's something to do before it gets 18,000? :)
Definitely open to thoughts on this!

I've removed ISerializationToolsFactory. I think that v2 could have breaking changes.
Migration from version 1 to 2 won't be difficult. You can look up how I changed ExtendedXmlSerializer.Samples project.

GOOD. I agree.  Not much to change, but you never know with projects and the requirement to move forward/preserve existing functionality.  I just wish I asked sooner! :)

Addressed with #38


Unable to Prevent Circular Reference during Serialization.

Hi there,
I’m encountering an issue when using the GROQ API with the configuration in my config.yaml file. Specifically, I’m running into a circular reference error during serialization. The error message is shown in the screenshot below:

Here’s the configuration I’m using:
providers:
  - id: groq:llama3-8b-8192
    config:
      temperature: 0.7
      max_tokens: 100
      apiKey: ${GROQ_API_KEY}

prompts:
  - id: test-prompt
    raw: "This is a test prompt."

tests:
  - name: "Simple Test"
    prompts:
      - test-prompt
    provider: groq:llama3-8b-8192

The error occurs when trying to serialize the data, and I’m unable to prevent the circular reference.
Any assistance or help in resolving this issue would be greatly appreciated!
Thanks in advance.

Hi @ankit-agarwal-x, thanks for reporting this issue. It looks like your test setup not quite correct. Specifically, this part needs to be adjusted:
tests:
  - name: "Simple Test"
    prompts:
      - test-prompt
    provider: groq:llama3-8b-8192

You can use something like this instead
# yaml-language-server: $schema=https://promptfoo.dev/config-schema.json
prompts:
  - label: test-prompt
    id: "Write a tweet about: {{topic}}"
providers:
  - id: groq:llama3-8b-8192
    config:
      temperature: 0.7
      max_tokens: 100

tests:
  - vars:
      topic: "cats"
    assert:
      - type: "contains"
        value: "cats"

I recommend adding the following line to the top of your config.yaml file to validate your configuration (if your editor supports YAML schemas – VSCode does by default):
# yaml-language-server: $schema=https://promptfoo.dev/config-schema.json

For details on setting up tests, take a look at our Configuration Guide and some examples to ensure everything is correct.
Finally, I highly recommend checking out this short video from OpenAI on how to use Promptfoo.

Hi @mldangelo,
Thank you for your earlier guidance regarding my configuration. It helped clarify the setup, and I’ve made the suggested changes to align with the schema. However, I’m now encountering a circular reference error when using the GROQ provider with the configuration below:
# yaml-language-server: $schema=https://promptfoo.dev/config-schema.json
providers:
  - id: groq:llama3-8b-8192
    config:
      temperature: 0.7
      max_tokens: 100
      apiKey: ${GROQ_API_KEY}
tests:
  - name: "RAG Security and Integrity Test Suite"
    prompts:
      - simple-injection-test
      - document-bypass
    provider: groq:llama3-8b-8192
    assertions:
      - type: model-graded-security

The error message includes:
Error saving result: TypeError: Converting circular structure to JSON
Starting at object with constructor 'Groq'
    property 'completions' -> object with constructor 'Completions'
    property '_client' closes the circle

Additionally, the metrics table view isn’t rendering because results cannot be saved, likely due to this serialization issue.
If you have any insights or recommendations to resolve this, I’d greatly appreciate it. Thanks again for the previous help and for the excellent work on Promptfoo!
Best regards,
Ankit

Hi @ankit-agarwal-x,  thanks for the update. A few corrections:

Test cases don’t support a prompt attribute. You should define your prompts as shown in my example above or in the [Configuration Guide](https://promptfoo.dev/docs/configuration).
There’s no need to set a provider on your test case. This should be handled with the top-level providers key.
Test cases don’t support a name attribute either. If you only have one test case, you don’t need to worry about this.
model-graded-security is not a supported assertion type. You can check our supported assertions here: [Supported Assertions](https://www.promptfoo.dev/docs/configuration/expected-outputs/).

I highly recommend starting with our examples. We even have a GROQ example available [here](https://github.com/promptfoo/promptfoo/tree/main/examples/groq). You can get a copy with:
npx promptfoo@latest init --example groq

Let me know if you have any other questions!

Hi @mldangelo,
Thank you for your detailed guidance and the prompt resolution of the initial issue. After carefully reviewing the updated configuration examples and aligning them with the supported schema, I identified the root cause of the problem. The circular reference error stemmed from improperly retrieving metadata from the Groq provider and incorrectly serializing the data before sending it to Promptfoo.
By restructuring the metadata handling logic and ensuring proper serialization, the issue has been resolved. Specifically, I isolated the _client reference within the Groq completion object, preventing circular dependencies during JSON serialization. This adjustment also enabled smooth integration with the Promptfoo evaluator pipeline, and the metrics view now renders without any issues.

I appreciate your help in pointing out the nuances of the YAML configuration and schema alignment—it significantly improved my understanding of the setup process. Thank you once again for your support and the excellent documentation!
Best regards,
Ankit


Also populate java in case user only has jdk installed

If a user only has JDK installed, looks like Oracle doesn't populate the registry key for JRE anymore.

@yacaovsnc do we need to check linux/mac? your change is going to only affect windows.

No need to change the way Linux/mac checks for Java capability.
I assume they just do a which check?  Then it should already work.