Redesign FTUX

The "First Time User Experience" (FTUX), needs improvement.
Problems with existing FTUX:

A. The blank state is confusing and not helpful.
User's don't know what they are looking at or how it works.

B. The auto-guessed state can potentially be confusing
If it guesses wrong, the intention of the UI could be hard to understand.
User may not understand to click the link and point it to folder containing projects

C. Many users may only want to import one project, or just may not have a folder filled with projects.
D. This default view for "multi-project import" doesn't help them.
They would have to select the parent of the folder they want to import, which isn't very intuitive
Or use the Add Project button, hidden in the top navigation. We can't expect a new user to find or understand this workflow on first use.
E. This leads to users selecting their project folder as the projects folder

F. Which leads to a bad set of imports

The FTUX screen should be revised to fix all of the above issues.

@mejiaj @zdennis @StephanRaab @blackbetty @kimmihack
Do you have any input on how this could be redesigned.

@TheJaredWilcurt I see. Let me play around with the app and see if I can come up with anything. Hopefully by this weekend.

The best idea I've had so far is to have two blocks/buttons on first load, where one says "Single Project Import" and the other says "Multi-Project Import".
               _________                   _________
              | Single  |                 |  Multi  |
              | Project |                 | Project |
              | Import  |                 | Import  |
               ¯¯¯¯¯¯¯¯¯                   ¯¯¯¯¯¯¯¯¯

Or the text under the button and the button having some type of iconography.

I wonder if we even need it? The great thing about the old scout app is you could just drag your project folders in. Whether it was 1 or 2. The language itself on those screenshots is kind-of confusing too.

Drag and Drop is a feature that is on the to-do list but hasn't been implemented yet.
Maybe a design like this?

But with nicer designs/iconography.

Hi everyone,
I have to apologize, but I'm currently moving and don't have access to my normal prototyping tools - I had to create some really lowfi wires, but I hope they are helpful. Based on the use case, I think the importer has to do more to help here. It should actively look for SASS directories or .scss files within a given structure and import only what it needs. This would help greatly with multiple projects as well. See:

This should elegantly handle single, multi, and drag/drop. The only thing not accounted for here is error cases, in which I'd say that the user should be sufficiently notified that the importer wasn't able to find any SASS files.
Happy to clarify on anything presented here.

My question is can the UI be a different color. The red is very distracting and looks like an anti-virus software screaming danger. Have your users had any problem with the color?

@MarGerix
The default theme on Scout-App is Simplex. It currently ships with 19 themes. We will also accept submissions for customized CSS for new themes if you would like to contribute.
As mentioned in the initial post of this issue, since the user can switch between different themes, any design work should be theme agnostic.

http://scout-app.io/#themes

You can download and familiarize yourself with the app here:

http://Scout-App.io

@TheJaredWilcurt
No problem! Sorry it was unclear. Usually I'd prototype this a little bit better to reduce the confusion.

My initial reaction to your explanation is that the initial scan might be too aggressive for something not instantiated by a user. Is this to facilitate users who are migrating projects? If not, what disadvantages do you see to someone selecting a folder (OS Selection in the wire just meant using the file select from the OS) and scanning that particular folder recursively? I think this will help tremendously with onboarding.
Another note on the initial scan: even with something like GitHub projects, if it doesn't have SASS files, what can the product do for the user? Is this a use case you see frequently?
The project auto-guesser seems to be working in a way that will help the app determine what SASS directories are where - it seems odd that the current importer returns all subdirectories.
This is where I think the functionality I mentioned could help. Given the following file structure (simplified):

If a user selects the parent folder (scout-scan), the program should identify project1 and project2 as importable, but not wireframes (there's no SASS match there).

If a user selects only the project1 folder (or the SASS folder below), then only that project should be selected for import.
From there, you have a few options - you can walk your user through confirmation, making sure that the auto-guesser did its part (change project name, icons, SASS/export directories) or do something like what you have now which is the checkbox confirmation.
I hope that helps. Happy to continue the dialog!

@TheJaredWilcurt
No problem! Sorry it was unclear. Usually I'd prototype this a little bit better to reduce the confusion.

My initial reaction to your explanation is that the initial scan might be too aggressive for something not instantiated by a user. Is this to facilitate users who are migrating projects? If not, what disadvantages do you see to someone selecting a folder (OS Selection in the wire just meant using the file select from the OS) and scanning that particular folder recursively? I think this will help tremendously with onboarding.
Another note on the initial scan: even with something like GitHub projects, if it doesn't have SASS files, what can the product do for the user? Is this a use case you see frequently?
The project auto-guesser seems to be working in a way that will help the app determine what SASS directories are where - it seems odd that the current importer returns all subdirectories.
This is where I think the functionality I mentioned could help. Given the following file structure (simplified):

If a user selects the parent folder (scout-scan), the program should identify project1 and project2 as importable, but not wireframes (there's no SASS match there).

If a user selects only the project1 folder (or the SASS folder below), then only that project should be selected for import.
From there, you have a few options - you can walk your user through confirmation, making sure that the auto-guesser did its part (change project name, icons, SASS/export directories) or do something like what you have now which is the checkbox confirmation.
I hope that helps. Happy to continue the dialog!

@TheJaredWilcurt cool man I just say that lol. Sure thing if i have some time on my hands i would surely contribute with any UX work  ^__^

@nic-bertino
Again, crazy busy week, I actually recorded this the other night but haven't had time to upload it until just now. Sorry for rambling.

https://youtu.be/QFjzthNZfEY

From ewiggle on Reddit:

Ok so I took a wag at this with mspaint. Hopefully it gets the ideas across though.

Here's an example where the auto-guessed state is more clear just because of the wording, I think. But it could be clearer - for example if it's appropriate for a user to know if their folder directory actually has a sass file at that point, then you could show a "yes" under a "has sass?" column or something like that. I left a placeholder there for that.

Here's an example that corresponds with nic-bertino's suggestion from github, or at least I think it corresponds to that - just forget that he used the word "recursive". I did watch your video response but I think you might have misunderstood the idea he was suggesting - or maybe I misunderstood it, either way the idea is new to you lol. Basically you select the projects you want, and then, like an e-commerce site, you approve your own selection and press the green button to get to the next screen. I like this idea and it's ... well I use amazon a lot and they have a similar style.

And, in the case where you were to do one of those quick scans and find that none of the directories to look in were found? At that point I think you need basically a suitable 404 page that points the user to a button which lets them browse to a correct location. Here's a terrible rendition of what I'm talking about. But hopefully the idea gets across. Here's a prettier version for some website from a random image search.

From @mejiaj:

The great thing about the old scout app is you could just drag your project folders in. Whether it was 1 or multiple.

Update: You can now drag and drop folders into the app at any point and it will auto-import them.

The design could probably be improved, but the functionality is there. However there currently is no indication in the UI that you can do this.
I'm considering changing the language in the app to "Drag and drop project folders".

Screenshots from ewiggle, with my responses.

:+1: I like the list of projects being displayed in a tabular way, with a "select/deselect all" checkbox being at the top. That simplifies a lot of things.
:+1: And I like the checking for Input/Output folders in advance.
:+1: The browse button to pick a different folder is the best part, way better than the clunk/hard to parse text I was using.
:-1: I can grab the current computer username, but that may be weird or creepy. I don't see a lot of benefit in doing this.
I'm think that we will auto-check any projects that have both an input and an output folder found.

:+1: This does help to better explain the concept. Navigate the machine, checking folders that you want to import, then show a list of the checked ones to the right for easy review.
:-1: Unfortunately I can't directly embed OS level folder trees. So I would need to scan and build the tree by hand in the UI. Which is very much possible, but kinda pointless when each OS supplies a file/folder browser that I can access. Also I think the first screenshot solves more problems in a more elegant way.

:+1: I'm think having Scout the Puppy sniffing at the box. Here's my modifications. Let me know what you think. The dog image is a placeholder until I could get actual artwork made for it from Kim.

I think a lot of good groundwork has been laid for multi-project import. We've fixed all the issues in A. & B. listed in the first comment of this issue. But we still don't have a good solution for people who want to drag/drop in projects, or just import one singular project (C., D., E., & F.).
This is the best option so far for that:

It solves C through F but I feel like there is probably a more elegant way of doing it. I can still use this method if we can't think of anything better though.

@ewiggle

I made a mockup of the multi-import on CodePen. You can play around with it here:

http://codepen.io/TheJaredWilcurt/pen/ORYgpB

I spoke with someone who works in UX today and they recommended reducing the accordance given the the drag/drop field seen here:

Once people know they can drag and drop, they won't forget that feature. It's safe to make it a little more subtle, even just some text with a slightly different color.
Something to consider while planning out this design.

From ewiggle on Reddit:

I didn't forget about this. Filled up some pages in my onenote and filled several pages in my sketchbook with notes/ideas/questions for this.
Once I get it into a digestible format, some rough mockups too hopefully, I'll send it along.
(lots of ideas, need to settle on a few of them)

awsome, look forward to it!

From ewiggle on Reddit:

I'll fully explain the reasoning behind each thing in these screenshots later in a separate post, but I just wanted to slide them across the table to let you know what I settled on. So what I'm saying is, hold your judgement until I send you the explanation as to why I decided on these - unless, of course, you dig them, in which case judge away.
Anyways, here are two screens which I settled on:
(oh, forgive the weights, fonts, icons, and so on ... but hopefully the idea is straightforward)
The first one is just adding on what you already mocked up on github. Mostly what I did here was think about how to explain to users which button they should push. I tossed around several other ideas for this part but this one won out.
The second one, while it might not look like anything is different, basically has three new buttons which I think would be useful. They are shown as underlined links and one just as text but that was to reduce their spotlight.
Then there are these other two (one and two) which I basically made when I was trying to refine the ideas into something even simpler just to see how it could be. (I'll also explain these last two but I'll use them more for questions about the functionality planned/missing.)
Anyways, just sending these to you prematurely because I feel like it's taken so long for me to decide on a thing. And, again, I'll explain my logic behind all the decisions in a separate post with basically an image that has text and arrows pointing to things in the mockup. I'll also explain the use cases I was imagining and which had priority and all that.
Edit: oh yeah and I did also narrow down my thoughts for that last issue where users don't know they can drag and drop on the main screen. i'll send that along later too.

@ewiggle
https://youtu.be/N8LpMoCUo90

From ewiggle on Reddit:

https://youtu.be/FrPc7OKFG5U
I mostly made this just to ... just because I liked your video feedback style and wanted to try it out. I'll still do the other write-up later.

@ewiggle
I think I'm having trouble understanding the userflow in your designs. What is the end-to-end process, starting from launching the app, to having a project/projects imported.
It looks like some of your mockups are at different stages of the process. Can you give an example (or multiple), like this.

User launches Scout-App
They see this FTUX screen
They drag in a project or multiple projects
User now sees the imported project(s)

User launches Scout-App
They see this FTUX screen
They click "Add a Project" and an OS directory browse window appears
They select a project folder to import
User now sees the imported project

Also, unrelated. I was looking at Mixture, one of several programs similar to Scout-App for assisting web designers and developers with a GUI (though it is now defunct). Its FTUX relied on users creating new projects based on one of their templates. The program heavily relied on projects being set up with specific structures and with special config files. I never liked that as it forces people to organize their project in ways they normally wouldn't, and it doesn't allow you to import an existing project without a lot of overhaul. But I do think the idea of having a "New project from template" or "New project from Boilerplate" may be good.
I'm still kicking around this idea. I'm not sure of how useful it would be or if it's a worthy feature or just cruft. Very much on the fence on this. I can see a lot of newbies finding it useful to have one-click access to an already set up and organized project.
Since I already had Mixture installed from a few years ago, and you can no longer download it, I took a screenshot to show what their FTUX looks like.

I don't think we would need that many templates. Really just 1-3 would probably be good. I'm thinking about a general, unbiased/agnostic one that just comes with the bare essentials, based off of HTML 5 Boilerplate. Then maybe a Bootstrap 3, Bootstrap 4 (when it's officially launched), and Foundation one? or maybe Bulma? Or maybe have an option for people to add their own, similar to the themes that come built in. I'm not sure.
I wouldn't bring it up, but it seems like if we were to add that feature in in the future that it would affect the FTUX of the app. Since that seems like one of the starting places for a new user.

Import single project
Multi-Project import
New project from template (???)

User launches Scout-App
Scout-App runs auto-importer routine in the background.
IF automporter finds nothing, then show the drag and drop screen, otherwise show the importer results screen.

Note: In the case where a user is first shown the [drag and drop] screen, after they browse to select a project or a directory of projects, they'll see the importer results screen next.
And here are additional insights into my reasoning which I promised to share.
Also, remember in some screenshots where I had an X button at the top right, making it a modal window? Well that's because I was imagining the app doing something like what google music does. I think you talked about having the app do that too. Anyways, this gif shows what that could act like.
As for your template stuff, yeah that would impact the design of your import functions because I think most users would be used to having "import" and "new" near each other when they first see them.
note: didn't send anything about drag/drop on main screen yet.

@TheJaredWilcurt
I've passively been thinking about the mixture template stuff and how that might be implemented. I've got a few ideas rolling around the head so I think it wouldn't necessarily have to be too far different from what you have, depending on how you plan on implementing it.
For example, if you want the import to be the first thing a user sees (i.e. not be modal, or not be something you select before it appears), then the import screen might have to adjust to be the "create or import" screen. And in that case that drag and drop screen would need to change its approach, in my opinion.
But that's just my initial inclination. In any case, I don't think the change that would be warranted would necessarily make the app look like a different beast altogether. So, yeah, while it will impact the design approach, I think it can still hang out there in the future if feature additions are still fuzzy. Or, could just make some mock-ups, and even do some brief testing, with the assumption that it will be implemented. Either way can work imo.

@ewiggle

https://youtu.be/Wfnm2oJHtyE
http://codepen.io/TheJaredWilcurt/pen/xRwMxx

@TheJaredWilcurt
Just to make sure I understand your end-to-end vision, I put these walkthroughs together so you could verify that's the process you're aiming for:

App starts here if nothing is found. Click on project button to walk through

App starts with a button highlit (or some sort of indicator) if projects are found. Click on multiple button to walk through

Are these correct?
Also, you mentioned that there was no indicator of being able to drag and drop except on that one part of the screen at the start. Well, here are some options for that part.
(Note: I simplified the screens for the sake of explanation and time.)
I do really like that idea about having the app let the user know it found projects, without actually taking the user to those found projects. That's interesting and gives the user more autonomy without first pushing them into the importer and risking the case where the user needs to find a way out.
I also like your option #2 where you separate the found files into the directories where you found the items. But does that mean your importer is no longer going to stop once it finds a directory of files - that would increase the completion time up to a couple seconds right, since it's scanning all the drive letters on the list?
Some other concerns:

You only get the importer table, where you can prematurely see if a project has input and output, if you select the group import button. Individual imports won't see that. Nor will drag and drops see it on anything except the multiple project import screen.
You can only add groups of projects with a button on the initial start of the app. After that, you have to drap and drop or do one at a time.
If the initial screen actually finds a bunch of projects and shows that fact with an indicator on the add group button, then the user will not be able to use that button to add their own group of projects. They'll be trading an initial "browse for multiple" button for a "show what the auto-importer found".
[x]'ing out individual items doesn't seem nearly as useful as [x]'ing out directories where you found stuff, and [x]'ing out the entire table such that you start from scratch. The x on individual items also seems to clutter the look, in my opinion. Because you can select the checkbox on each item, I don't think you need an x on each item.

@ewiggle

https://youtu.be/HtpS_k59hL8
http://codepen.io/TheJaredWilcurt/pen/xRwMxx

@ewiggle
I created an ftux branch today and started implementing this. Since it's pretty close to being done, I don't think it will take much effort to go back and alter the stuff I've done. So far the initial screen has been updated.

I ended up creating my own icon for "drag and drop", unfortunately it still didn't meaningfully convey the concept on it's own so I had to add a dashed border.
If you click inside the dashed board or on the "add a project" button, it will give you the directory browser to import 1 project.
The button colors are the best I can do without making the buttons look ridiculous in other themes (since Scout-App ships with 19 different themes, they all have to look at least okay).
Still need to work on the icons that are on the buttons themselves, and start on the multi-project import modal.

Is there any text that should be changed before I add it to our localization system
Are there any design aspects that need changed.

From ewiggle on Reddit:

Just want to let you know that I did read this and watch the video and so on, like moments after you posted each. Glad the issues have all been addressed, at least somewhat.

My aim is to provide some comments, icon ideas for your designer (or you), and so on before too long. I'm hoping sometime this week.

Separately I did also want to cover some other opinions I had as well

user testing, insights, etc
consistency in the interface
something else I can't remember ...

That said, right off the bat I would consider saying "add project" (without the 'a') just to match the wording in the other button next to it.

http://codepen.io/TheJaredWilcurt/pen/LbZXyR?editors=0100

Toying around with how to make the drag/drop part of the design better

I like this version. Additionally I would get rid of the "File" dropdown on top, because it's redundant. I would move 'Preferences' outside of 'File' and maybe add it as a gear icon top right of the menu bar, or just as a text link 'Preferences' before 'About'.

@bartclaeys
You can see in the File menu of this mockup, that additional things can be added

http://codepen.io/TheJaredWilcurt/pen/xRwMxx

This seems like the most logical place to put things that are unique features (should not be combined with other views) but aren't something people will need immediate access to all the time (shouldn't be visible at all times). The only other options to this would be:

To have these additional features hidden inside of other dialogs, which just adds unnecessary clicks and may be confusing or unintuitive.
To display everything in the UI at all times, so nothing is every hidden or obscurred. However this lends itself to creating a very cluttered interface quickly, and the whole point of Scout-App is to be very simple.

From ewiggle on Reddit

Been a bit but I didn't forget. I will share things either way once I set time for it. Wanted to chime in to say that.

Cool, still in the process of implementing what we've discussed so far. I'm running into some stuff that I want to run by you for input once I get further along

@ewiggle @bartclaeys @nic-bertino
Here is what the current dev branch looks like, and the status of the FTUX

https://www.youtube.com/watch?v=LC26sCTEzd0

Here is the language that needs finalized
Menu:

A. New from Boilerplate (Won't be in the upcoming version, but the one after it)
B. Multi-Project Import

FTUX:

C. <h3>Drag and Drop</h3> <h4>anywhere to import projects</h4>
D. Add a Project (Button 1)
E. select a project folder (Under Button 1)
F. Add Group of Projects (Button 2)
G. select the group folder (Under Button 2)
H. found 34 projects (Under Button 2 alternative)

Multi-Project Import Modal:

I. Multi-Project Import (Modal title)
J. 15 Selected Projects (Panel header)
K. Project Name (Table header)
L. Input (Sass) (Table header)
M. Output (CSS) (Table header)
N. Drag & Drop (Panel footer)
O. Add another project (Panel footer)
P. Add Group of projects (Panel footer)
Q. Import 15 Projects (Button 3)

After looking this over, N., O., and P. are the ones in need of the most improvement. The rest seem to work pretty well.
I've update the FTUX view so now it detects if the Auto-Guesser found a projects folder and if so it shows how many projects are in the folder under the button.

And the number animates in using CountUp.js over 2.5 seconds. So it draws your attention to it.
I'll be making the icons soon, then that's about it.

I updated some of the icons. Next up is localizing all of the text except for stuff in the footer of the Multi-Project Import modal:

Drag & Drop
Add another project
Add Group of projects

If I don't get any feedback from people I'll tinker around with it and see if I can come up with anything better for the language there, then localize it too.
@ewiggle @nic-bertino @bartclaeys

@TheJaredWilcurt are there any design guidelines for the app? Maybe it might be useful to document this + some patterns. That way you or other devs can easily build on the UI and still keep the design feeling unified.
Like a styleguide.

Localized the FTUX/Multi-Import modal. Except for the 3 buttons mentioned previously.

Still need to translate all the other languages on these new KEYS.
Gotta run to work, will answer styleguide question later.

@mejiaj
I just started writing up some UX docs and rules. It probably needs some more attention but it's a start.

https://github.com/scout-app/scout-app/blob/master/documentation/ux.md

I think this GitHub issue has served it's purpose for improving the FTUX. There is a new UX issue open for more general discussion. Thanks for everyone's input on the FTUX. If you have more ideas, post them in the new issue:

https://github.com/scout-app/scout-app/issues/285

Closing this issue.


Treat MenuBar and MenuButton as advanced UI

These rely entirely on other advanced UI elements, namely popup menu
Follow-up to:

https://github.com/godotengine/godot/pull/93780

As a follow-up PR, this docs page should also be updated: https://docs.godotengine.org/en/stable/contributing/development/compiling/optimizing_for_size.html#disabling-advanced-gui-objects

I've been planning to improve some of the descriptions there as they're already somewhat out of sync, will do as well

Opened a doc PR to handle the new entries as well as improve some of the style there:

https://github.com/godotengine/godot-docs/pull/9854

Thanks!

Thank you!


Refactor

You'll need a gemfile like
source 'https://rubygems.org'
gemspec
gem "logstash-mixin-rabbitmq_connection", :path => "../logstash-mixin-rabbitmq_connection"
gem "logstash-core", :path => "/Users/andrewvc/projects/logstash"
gem "logstash-devutils", :path => "/Users/andrewvc/projects/logstash-devutils"⏎

We are missing a runtime_dependencies on the mixin in the gemspec :/

@andrewvc Just need to fix the dependencies issue in the gemspec once its done you can merge this.
I run the normal test and the integration test!
Much better code!

@andrewvc sorry just got a flash and added a bit more comments :(
Can you update the changelog?

@ph done!


fixed rtr bit issue

So for some reason the rtr bit wasnt being passed correctly down the functions so now it should work. Havent done intensive testing, just a few minor things but I see no reason it wont work.
First pull request of significance if I am doing something wrong please do tell me.
Gage C

Messed up, forgot to comment out some lines then committed it and thought I might have to open a new pull request. So I closed this one, and now I reopened it. Sorry for any inconvenience


Guidance on writing UDF window functions

Hello, I was wondering if there is any intention to provide more advanced examples of using UDFs to provide some of the missing aggregation functions that we typically get in the other flavours of SQL?
In particular it would be nice to have access to a greater range of statistical functions, e.g. quantiles, weighted averaging, etc. While I can implement a UDF to do a simple sum of across columns: x + y, I am unsure what I would need to write to be able to perform an aggregation. For example, to get the average would it be something like?:
EXTENSION_NOINLINE
double my_average(const Array<double> arr) {
    double mean_, sum_, size_;
    size_ = static_cast<double>(arr.getSize())
    sum_ = 0
    for (int32_t i = 0; i < arr.getSize(); i++) {
        sum_ += arr(i);
    }
    mean_ = sum_/(size_ + 1.)
    return mean_;
}

I suppose this is more of a feature/support request than an issue.

Hi @rhyswhitley,
We do not yet support user defined aggregate functions. However, with our recently landed result set reduction JIT, this is mostly an exercise in plumbing. It is on our road map but I don’t have a firm ETA at the moment.

@alex-brant Hi! has user-defined aggregate functions been implemented yet?
I'm specifically interested in averaging functions - exponential/simple average etc.,


release artifacts for v0.0.1

Signed-off-by: Jay Pipes<EMAIL_ADDRESS>Includes support for Role resources only.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

/hold

/unhold

Ship it!
/lgtm


Feature/2966/search routing

For dockstore/dockstore#2966
So many changes:
This fixes routing so that the back button works
This remembers pageSize and pageIndex
Basic search and advanced search are now mutually exclusive. If the URL has stuff from both, basic search is prioritized.
Added manual test because we don't have elasticsearch running in tests yet.
Search for tool and workflow names too in basic search
See https://garyluu.github.io/dockstore-ui2 for a slightly up to date commit of this branch.
There's a pretty high chance that something broke while fixing this. Everyone should extensively test that link before this should be merged.

Was here, kicked integration test 2


Clearer instructions to Add Fonts

When I was trying to add the font Cartograph CF, I ran into an issue where I couldn't preview the code samples and I couldn't get the screenshots to work. I was using the markdown file name, cartograph.md as the variable, but nothing seems to work. After doing a little bit of digging, I found that dist was creating the page with a path of /cartograph-cf instead of /cartograph.
The Title in my cartograph.md file was Cartograph CF. Once I figured that out, I ran screenshots and the preview with cartograph-cf and everything worked.
I updated the README to call this out in case someone else ends up with a font title different from the name of their markdown file.

thanks again!


PRM-2793 make PoC achievement date optional

Could you also rebase, please?

Could you also rebase, please?

Done


Custom Field Definition Not Working

Is there an existing issue for this?

[X] I have searched the existing issues

Describe the issue
Question on this, say I have a custom field like so:
Field Name: Foo
Field ID: 12345
How should I structure it in vars?
I tried this and it failed:
##dbt_project.yml
vars:
zendesk__ticket_passthrough_columns: [Foo]
I got the message:
Unrecognized name: Foo at [415:9]
compiled Code at zendesk_source/models/stg_zendesk__ticket.sql
Relevant error log or model output
Unrecognized name: Foo at [415:9]
compiled Code at zendesk_source/models/stg_zendesk__ticket.sql

Expected behavior
The custom field to be picked up by dbt models
dbt Project configurations
Project name -- the same with Github Repo name
name: 'data_dbt'
version: '1.3.0'
config-version: 2
These configurations specify where dbt should look for different types of files.
model-paths: ["models"]
analysis-paths: ["analysis"]
test-paths: ["tests"]
seed-paths: ["seeds"]
macro-paths: ["macros"]
snapshot-paths: ["snapshots"]
target-path: "target"  # directory which will store compiled SQL files
clean-targets:         # directories to be removed by dbt clean

"target"
"dbt_packages"

vars:
quickbooks_schema: landing_quickbooks
stripe_schema: landing_stripe
stripe__using_credit_notes: True
zendesk_schema: landing_zendesk
using_domain_names:         False
using_organization_tags:    False
# zendesk__ticket_passthrough_columns: [Inquiry]
Package versions
packages:

package: fivetran/quickbooks
version: 0.11.0
package: fivetran/stripe
version: 0.10.1
package: dbt-labs/dbt_utils
version: 1.1.1

- package: fivetran/zendesk
version: 0.12.0

git: https://github.com/fivetran/dbt_zendesk.git
revision: bugfix/daylight-end-catch
warn-unpinned: false

What database are you using dbt with?
bigquery
dbt Version
1.3.0
Additional Context
None
Are you willing to open a PR to help address this issue?

[ ] Yes.
[X] Yes, but I will need assistance and will schedule time during our office hours for guidance
[ ] No.

Yes, tried again with the double quotes and still not working:
Errors parsed from dbt logs:
BigQuery adapter: https://console.cloud.google.com/bigquery?project=data-pipeline&page=queryresults
1 of 3 ERROR creating sql table model staging_zendesk.stg_zendesk__ticket ...... [ERROR in 2.12s]
  Database Error in model stg_zendesk__ticket (models/stg_zendesk__ticket.sql)
  Unrecognized name: Inquiry at [415:9]
  compiled Code at target/data_dbt_dbt_assets/run/zendesk_source/models/stg_zendesk__ticket.sql

We are using Google BQ as our Warehouse

For the name, I am getting it from: landing_zendesk.ticket_custom_field and using the title column from there

@jimmiemunyi the next question I have is if you've confirmed that Inquiry exists in your raw ticket table?

Maybe that could be my issue. Which table specifically are you talking about?
It exists on the custom_fields table I mentioned above.

Ahh. So how the passthrough feature works is that it is enabled in our staging model for the raw ticket table . So the fields you want to add must come from that source table, the raw zendesk ticket table. Hopefully that helps clarify.
If you want to add in a custom field from a separate table, you could potentially try joining that table in on top of our models. But this is up to the user's judgement since this is outside of our package offering and you'll have to make certain with the keys you are joining on.

Hi @jimmiemunyi let me know if you have any other questions! Otherwise we'll probably close this one out in the coming days

Hi @fivetran-reneeli, we can close this. Thanks for your guidance. I managed to get it to work


Using resourcelink

I’m trying to use resource links ( https://github.com/ebaauw/homebridge-hue/wiki/Resource-Links) to expose some lights (ledvance plug in reality, but Hue bridge sees them as lights).
I’m just having trouble know which device is which number exactly, for example ‘lights/23’.
This used to be in the Hue app, in settings under ‘about’, but this is not there anymore. Is there another way finding out which light is which, so I know which I can expose as a plug?
p.s. I checked the wiki and other issues, but nothing answers my question. Sorry if I missed something.

Issue

Log Messages

Debug Files

I think the Hue app no longer shows the resource IDs, since it is migrating to the Hue API v2, where they've replaced the resource IDs by UUIDs.  Even less user-friendly.
Probably easiest to expose all lights temporarily, and check the Resource in Eve or another decent HomeKit app.  Alternatively, run Homebridge in DEBUG mode and check the log messages.  Homebridge Hue logs all resources on startup, and you can see the resource as Homebridge Hue logs commands sent to the Hue bridge when you control the lights from HomeKit.

I think the Hue app no longer shows the resource IDs, since it is migrating to the Hue API v2, where they've replaced the resource IDs by UUIDs. Even less user-friendly.
Probably easiest to expose all lights temporarily, and check the Resource in Eve or another decent HomeKit app. Alternatively, run Homebridge in DEBUG mode and check the log messages. Homebridge Hue logs all resources on startup, and you can see the resource as Homebridge Hue logs commands sent to the Hue bridge when you control the lights from HomeKit.

Not sure where to find the resource in the latest Eve app, but I will give the homebridge log in debug mode a try. Thanks for this and the great plug-in!


Fix train error message if incorrect data type selected

If a user changes the data type of a column which does not make sense (e.g. setting data type to Single for a column that only has strings), then the error message on train should be more descriptive than:

More like:
Input column "payment_type" cannot be a Single. Try changing the Data Type in Advanced Data Options.

@beccamc To look at current experience for next weeks' triage meeting.

This has regressed, it's supposed to look like this:

Regressed from this PR


Sanofi - The message "Praha, Budapest and Warsaw are not cities in Romania" is displayed

ENVIRONMENT: production
URL: https://scrapers.peviitor.ro
Browser: Microsoft Edge
Device: Laptop
OS: Windows 10
STEPS TO REPRODUCE:

Open the URL in the browser
Search for "Sanofi" Company
Check the cities of the jobs
Open https://en.jobs.sanofi.com/search-jobs/Romania
Check the job location for the jobs

EXPECTED RESULTS:
The city of the job is Bucharest as on the company's website
ACTUAL RESULTS:
The messages "Praha is not a city in Romania", "Budapest is not a city in Romania" and "Warsaw is not a city in Romania"  are displayed
On the company's website, there are multiple locations for a job and the scraper only picked up the first city

Fixed!

The number of jobs on scrapers.peviitor.ro (4 jobs) is not the same as the number of jobs on the company website (8 jobs)
4 of the jobs have multiple locations and were not taken over by the scraper

Fixed

After retesting, the city of the 14 jobs is Bucharest, as on the company's website


Do not reverse with translation if current language is equal to LANGUAGE_CODE in settings

Now if you will create urlpattern with url(_(r'^$'), 'your.app.views.mainpage', name='home'), homepage will be redirected to / that is unexpected behaviour.
What expected
>>> activate('en')
>>> reverse('news:category', kwargs={'slug': 'recent'})
'/news/category/recent/'

>>> activate('ru')
>>> reverse('news:category', kwargs={'slug': 'recent'})
'/ru/news/category/recent/'

Could you post your full urls.py?

from coffin.conf.urls.defaults import patterns, include, url
from django.conf import settings
from django.utils.translation import ugettext_lazy as _
from i18nurls.i18n import i18n_patterns
urlpatterns = patterns('',
url(r'^logout/$', 'monday52.views.signout', name='logout'),
(r'^fb/', include('monday52.fb.urls')),
(r'^media/(?P.*)$', 'django.views.static.serve', {'document_root': settings.MEDIA_ROOT}),
)
urlpatterns += i18n_patterns('',
url((r'^'), include('social_auth.urls')),
url((r'^$'), 'monday52.views.mainpage', name='home'),
url(_(r'^logout/$'), 'monday52.views.signout', name='logout'),
)

If I understand your question right, you want that if your LANGUAGE_CODE='en' and you activate('en'), that there is no language-prefix in front of the patterns defined in i18n_patterns.
This is not how the this package was implemented and I don't have any plans to implement this feature. The problem with this is that if there is no language prefix in the URL, it will be activated based on cookie or request headers.
Example URLs:
EN: /en/news/category/recent/
NL: /nl/nieuws/categorie/recent/
Example issue:
I request (or the server generates this url for me) /nieuws/categorie/recent/ with in my request headers HTTP_ACCEPT_LANGUAGE='nl', this would work for me. But then when I want to share this URL with an English friend (or somebody who has an other language in his HTTP_ACCEPT_LANGUAGE request header), this URL is not valid, since it can not be resolved in other languages than 'nl'. Therefore the language-code should be always in front of the URL, so that when you share an URL with somebody else, Django knows which language to activate.
Please let me know if I have answered your question. If so, could you close this issue?

The website without any user action must not change language basing only the HTTP_ACCEPT_LANGUAGE in headers.
You have an url and cookies (see that cookies is setting up by user and not browser), only by this two condition you can set language and not in another cases.
For example:
You opened example.com and this site in english, you know it and expect that materials in it will be in english. It is absolutely correct. But imagine you whose language is english open browser on notebook of your german friend and see german language of website that base language is english. I think you say "WTF?" if that occurs.

This is how Django decides which language to activate on an incoming request:

First, it looks for the language prefix in the requested URL (Django 1.4 / django-i18nurls)
Failing that, it looks for a django_language key in the current user's session
Failing that, it looks for a cookie
Failing that, it looks at the Accept-Language HTTP header
Failing that, it uses the global LANGUAGE_CODE setting

https://docs.djangoproject.com/en/dev/topics/i18n/translation/#how-django-discovers-language-preference
So yes, Django will activate the German language on the notebook of your German friend (assuming the website is translated to German, he has the right headers set, etc...).

This is completely incorrect. Each language code should be mapped on its different domain (e.g. google.com).
I just wanna say that if you have HTTP_ACCEPT_LANGUAGE it should not be redirected to another url.


Handle nullable byte field

Background [Optional]
In the file coming from the mainframe, there is an additional byte in front of every field which is nullable. Cobrix can not detect this byte in the process of parsing, because this is missing in the description(copybook). One approach would be to edit the description adding FILLER field just before the nullable field, then cobrix by default will skip it.
Question
Is there a more elegant solution using cobrix options for solving this issue? I read the documentation, but it is possible that I have missed something.

Hi, this is something new, we haven't encountered this way of representing nullability. Using fillers is a good solution, but we are happy to also add direct support of such nullable fields. Could I ask you to provide an example of such data and a copybook to serve as a requirements definition? A synthetic example is sufficient.

Hello, unfortunately, I could not send you an example, because of the sensitivity of the data. I have a dumped files from the mainframes and I don't have access to it as well, so I could not provide you synthetic example also. What I can do is to describe to you, how you can reproduce the issue. During the process of creating a new file declare some fields that could have a null value.

Generate copybook and get data file. When you read it using cobrix, you will get an IllegalArgumentException with a message "There are some files in ... that are NOT DIVISIBLE by the RECORD SIZE calculated from the copybook (93 bytes per record). Check the logs for the names of the files." This exception is caused by a missing description in the copybook about whether some field is nullable or not. If you open the data file in some hex editor you will see, that in front of every nullable field there is an additional byte.

Hi, sorry I don't have access to a mainframe system that supports nullable fields. Unless we have an example or a spec on how null values are represented in the data file we don't have enough information in order to implement it.
A simplest synthetic example that would be sufficient is a copybook with a data file that contains only 1 nullable field, and 2 records, one null, other non-null. I think sensitive-data free example like this could be created in a HEX editor from the data you already have.

Hello, I am sending files.
data.zip
AFDI and DATUM are declared as nullable.

Thanks for the example!
Looking into the original copybook (without fillers), and it seems nullable fields are not marked in any way so the parser can't tell if a field is nullable or not. So it seems adding fillers or extra fields in the copybook is the only way i can see this can be solved. Please, let me know if you have ideas how this can be automated.

Hello, yes they are not, I mentioned it from the beginning. As a workaround, I will change the copybook content for this kind of field programmatically. But I don't have any idea, how this could be automated in cobrix.
Thanks for your support!

At the moment there is no automated solution for these fields being caught and this extra byte to be parsed.


Create generic dataset_base and s3_dataset modules from current datasets

Is your feature request related to a problem? Please describe.
It is difficult to add new dataset types with the current implementation of the datasets module.
Describe the solution you'd like
If we want to add more types of dataset (e.g. Redshift dataset) a first step will be the creation of a generic class that defines a data.all Dataset abstraction that can be used by each of the particular dataset implementations.
Describe alternatives you've considered
This are rough design considerations that might change during implementation:

Backend
1. Avoid circular dependencies and remove the current datasets_base
There is some work to do to avoid circular dependencies between the initialdatasets and dataset_sharing. There are some API calls that use each others' graphql models. From a code logic perspective, datasets should not depend on dataset_sharing code, so as a first step we will remove this dependency by defining the corresponding code related to dataset_sharing in dataset_sharing always.
2. Define basic code layout

datasets --> includes db base models for Dataset + list methods in the repository + factory for the services (creation, import)
- DEPENDS ON: nothing - we need to remove dependencies with sharing. Anything related to sharing should be moved to the sharing module.
dataset_sharing --> includes db base models for ShareObject, base permissions + list methods
- DEPENDS ON: dataset_base
s3_datasets --> includes all db models of S3 datasets + implementation of factory
- DEPENDS ON: dataset_base and dataset_sharing_base (maybe)
s3_dataset_sharing ---> business logic for S3 sharing
- DEPENDS ON: s3_dataset, dataset_sharing_base
in the future redshift_datasets and redshift_dataset_sharing

3. datasets module
The datasets module:

contains the API calls that list Datasets
contains the base code for other modules to implement a dataset

I thought of splitting the module into 2 modules: datasets_list module and datasets_base module. Although datasets_base would not be a module, it is some base code that will be re-used by other modules. Because of this and because the dataset_list uses dataset models I decided to leave it in the same module, but we could change this behavior, it is not a one way door.
Base code for Datasets

NO API CALLS
Base service dataset_base_service - Defines abstract class DatasetBaseService to be implemented in each dataset type
Database models - defined in datasets/db/dataset_models
- Dataset - same as before but WITHOUT all S3-related logic. We add the datasetType column. Each dataset module will have to implement their own tables based on this table (explained below)
- DatasetLock - it is a generic model that can be used by any type of dataset.
Database operations - in DatasetRepository in datasets/db/dataset_repositories  DatasetLock transactions. Each dataset module will have to implement their own repositories.
datasets_enums - re-used by all Datasets

List Datasets

API definitions in datasets/api
Service dataset_list_service - business logic and permissions checking
Permissions dataset_permissions DATASET PERMISSIONS FOR ENVIRONMENT - List Datasets in environment needed for the service
Database models - explained above
Database operations to query all Datasets DatasetListRepository in datasets/db/dataset_repositories independent from their dataset type. It is a EnvironmentResource type to count_resources before deleting an environment.
datasets_enums - explained above

4. s3_datasets module
Very similar to the previous datasets_module, it contains the code to manage S3-GLUE datasets in data.all.

API calls - WITHOUT listDataset calls
AWS clients - includes all previous code as it is S3/GLUE-Dataset specific
CDK stacks and permissions
Database models/repositories:
- S3Dataset model that uses Dataset as base using inheritance in sqlalchemy.
- Other models that are specific to S3/GLUE-Datase: tables, folders.....
handlers - includes all previous code as it is S3/GLUE-Dataset specific
indexers
services
tasks - includes all previous code as it is S3/GLUE-Dataset specific

Frontend

The listDatasets view is generic as it is the API listDatasets and analogous apis
All the detail getDataset views are specific of each Dataset type

Config.json
Divide the parameters between those that are generic dataset parameters (defined in dataset module) and those that are s3_datasets specific parameters.
        "datasets": {
            "active": true,
            "features": {
                "share_notifications": {
                    "email": {
                        "active": false,
                        "parameters": {
                            "group_notifications": true
                        }
                    }
                },
                "confidentiality_dropdown" : true,
                "topics_dropdown" : true
            }
        },
        "s3_datasets": {
            "active": true,
            "features": {
                "file_uploads": true,
                "file_actions": true,
                "aws_actions": true,
                "preview_data": true,
                "glue_crawler": true
            }
        },

Additional context
Add any other context or screenshots about the feature request here.
Related to #955
🥇 Thanks to @dosiennik for his suggestion of using inheritance in sqlalchemy: https://docs.sqlalchemy.org/en/20/orm/inheritance.html this will allow us to define a Dataset model and child models
P.S. Please Don't attach files. Add code snippets directly in the message body instead.

Step-by-step PRs:

[X] decouple datasets and datasets_sharing and remove the initial datasets_base module
[ ] Separate datasets into datasets_base and s3_datasets

[ ] Rename datasets to s3_datasets
[ ] Extract datasets_base logic

[ ] Separate datasets_sharing into sharing_base and s3_datasets_sharing

[ ] Extract sharing_base logic

Completed!


Add error handling for export_scenario_text

Getting errors when trying to export scenario, so adding error handling
Traceback (most recent call last):
  File "src/helm/benchmark/contamination/export_scenario_text.py", line 89, in <module>
    light_scenarios.extend(get_light_scenarios_from_run_spec(run_spec))
  File "src/helm/benchmark/contamination/export_scenario_text.py", line 41, in get_light_scenarios_from_run_spec
    instances = scenario.get_instances()
  File "/juice4/scr4/andyzh/helm/src/helm/benchmark/scenarios/newsqa_scenario.py", line 169, in get_instances
    assert os.path.exists(file_path)
AssertionError
Fatal error condition occurred in /opt/vcpkg/buildtrees/aws-c-io/src/9e6648842a-364b708815.clean/source/event_loop.c:72: aws_thread_launch(&cleanup_thread, s_event_loop_destroy_async_thread_fn, el_group, &thread_options) == AWS_OP_SUCCESS
Exiting Application
################################################################################
Stack trace:
################################################################################
/juice4/scr4/andyzh/helm/venv/lib/python3.8/site-packages/pyarrow/libarrow.so.900(+0x200af06) [0x7fb4301b1f06]
/juice4/scr4/andyzh/helm/venv/lib/python3.8/site-packages/pyarrow/libarrow.so.900(+0x20028e5) [0x7fb4301a98e5]
/juice4/scr4/andyzh/helm/venv/lib/python3.8/site-packages/pyarrow/libarrow.so.900(+0x1f27e09) [0x7fb4300cee09]
/juice4/scr4/andyzh/helm/venv/lib/python3.8/site-packages/pyarrow/libarrow.so.900(+0x200ba3d) [0x7fb4301b2a3d]
/juice4/scr4/andyzh/helm/venv/lib/python3.8/site-packages/pyarrow/libarrow.so.900(+0x1f25948) [0x7fb4300cc948]
/juice4/scr4/andyzh/helm/venv/lib/python3.8/site-packages/pyarrow/libarrow.so.900(+0x200ba3d) [0x7fb4301b2a3d]
/juice4/scr4/andyzh/helm/venv/lib/python3.8/site-packages/pyarrow/libarrow.so.900(+0x1ee0b46) [0x7fb430087b46]
/juice4/scr4/andyzh/helm/venv/lib/python3.8/site-packages/pyarrow/libarrow.so.900(+0x194546a) [0x7fb42faec46a]
/lib/x86_64-linux-gnu/libc.so.6(+0x468d7) [0x7fb4325ee8d7]
/lib/x86_64-linux-gnu/libc.so.6(on_exit+0) [0x7fb4325eea90]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xfa) [0x7fb4325cc0ba]
python3(_start+0x2e) [0x5fa5ce]
./run.sh: line 14: 3652932 Aborted                 python3 src/helm/benchmark/contamination/export_scenario_text.py --run-specs run_specs_small.conf --output-data run_specs_gpu

Could you rebase to main so that it is obvious what the actual diff is? Right now the diff is including all the changes from the contamination to overlap rename. Alternatively, open a new PR with a new branch.

Gentle ping to rebase PR (or open a new PR).

Ah this PR is stale, closing


It there a way to set max_repo_creation for organizations from API

Feature Description
like this #2931
Screenshots
No response

I'm not aware of this functionality, feel free to propose an implementation.
Please don't open duplicate issues and continue discussion in #2931


 They also make versioning and upgrades opaque.
We now have artifact repos and can build & publish versioned artifacts; we can even consume them!
Build jars for:

cache-server.jar
cache-client.jar
control-server.jar
control-client.jar

Later we can publish artifacts for other languages too.

we don't submodule these anymore.


Return passthrough statistics instead of keeping them in a static variable (close #13)

This works fine to close the leak caused by PassthroughStatistics.
However, there is one open question:
What is StatisticsManager.parseStatisticAnnotations used for? Because it creates PassthroughStatistics that will probably be GCed right away now.

This code is only used when using the Statistics annotations. However, it seems to be unused. So I guess the feature can be removed.

This PR means an API / usage change so please make sure to bump the version to 1.5-SNAPSHOT.

Closing as obsolete


Default resources for backend are missing some recent changes

The default resources in sensu::backend::default_resources are not up-to-date with latest Sensu Go.
Notice: /Stage[main]/Sensu::Backend::Default_resources/Sensu_cluster_role[system:user]/rules: rules changed [{"verbs"=>["get", "update"], "resources"=>["localselfuser"], "resource_names"=>nil}] to [{"verbs"=>["get", "update"], "resources"=>["localselfuser"], "resource_names"=>nil}, {"verbs"=>["get", "list"], "resources"=>["namespaces"], "resource_names"=>nil}]

There should be acceptance test to ensure the defaults we deploy are still the defaults from Sensu Go.

Appears change was introduced in Sensu Go 5.14.2.


 The underlying problem is that, if TaskKiller is called with wipe=true, it will explicitly expunge all found instances, and call KillService.killInstances with all launched instances:
if (wipe) expunge(foundTasks)
val launchedTasks = foundTasks.filter(_.isLaunched)
if (launchedTasks.nonEmpty) await(service.killTasks(appId, launchedTasks))
```

With the given test setup, this will effectively process two Expunge operations for the running instance, and one for the reserved one. The test only verified 2 ops, and eventually both were for the same instance which let the test fail.

Thanks!

:ship: it


Improve ConversationInfo Layout

Redesign ConversationInfo layout after Add Participant / Remove Participant / Promote Participants / Leave Conversation features are complete.
Also add sliding animation with CSSTransition

Reopened because the sliding animation was not addressed in the previous pull request


GoodJob::ActiveJobExtensions::Concurrency::ThrottleExceededError in Communication::Website::DirectObject::SyncWithGitJob@elephant

Error in Osuny
GoodJob::ActiveJobExtensions::Concurrency::ThrottleExceededError in Communication::Website::DirectObject::SyncWithGitJob@elephant
GoodJob::ActiveJobExtensions::Concurrency::ThrottleExceededError
View on Bugsnag
Stacktrace
vendor/bundle/ruby/3.3.0/gems/bugsnag-6.27.0/lib/bugsnag/report.rb:436 - block in generate_exception_list

View full stacktrace
Created automatically via Bugsnag

An error linked to this issue has been marked as fixed in Bugsnag
GoodJob::ActiveJobExtensions::Concurrency::ThrottleExceededError in Communication::Website::DirectObject::SyncWithGitJob@elephant


install a svelte-kit package from git

Describe the problem
when creating packages with svelte-kit https://kit.svelte.dev/docs#packaging
how is this supposed to work, when i install the package from git?
for example: svelte-jsoneditor
npm install https://github.com/josdejong/svelte-jsoneditor

usually i use the "prepare" script in package.json, to build such a library
{
  "scripts": {
    "prepare": "npm run build",
    "build": "..."
  }
}

but when the build is written to node_modules/pname/package/package.json
then obviously i cannot import it via node_modules/pname/package.json
Describe the proposed solution
naive solution: in svelte.config.js set kit.package.dir = "."
but this will delete the project root folder, including .git
workaround:
in svelte.config.js set kit.package.dir = "package"
package.json
{
  "scripts": {
    "prepare": "node svelte.prepare.mjs",
    "build": "..."
  }
}

svelte.prepare.mjs
import fs from 'fs';
import child_process from 'child_process';

const buildCommand = 'npm run build';
const svelteConfigPath = './svelte.config.js';
let pkgdir = 'package'; // default value
const ignoreFiles = ['.git'];

async function svelteKitPrepare() {

  console.log(buildCommand);
  child_process.execSync(buildCommand, { stdio: 'inherit', windowsHide: true });

  const srcdir = fs.mkdtempSync('src-of-svelte-kit-');
  ignoreFiles.push(srcdir);

  console.log(`move all files to ${srcdir}, except ${ignoreFiles.join(' ')}`);
  const ignoreFilesSet = new Set(ignoreFiles);
  for (const filename of fs.readdirSync('.')) {
    if (ignoreFilesSet.has(filename)) {
      console.log(`ignore ${filename}`);
      continue;
    }
    console.log(`mv -t ${srcdir}/ ${filename}`);
    fs.renameSync(filename, `${srcdir}/${filename}`);
  }

  // get custom pkgdir
  if (fs.existsSync(svelteConfigPath)) {
    console.log(`import ${svelteConfigPath}`)
    const svelteConfig = await import(svelteConfigPath);
    if (svelteConfig.kit?.package?.dir) {
      pkgdir = svelteConfig.kit.package.dir; // custom value
    }
  }

  // move package files back
  for (const filename of fs.readdirSync(`${srcdir}/${pkgdir}`)) {
    console.log(`mv -t ./ ${filename}`);
    fs.renameSync(`${srcdir}/${pkgdir}/${filename}`, filename);
  }

  console.log(`rmdir ${srcdir}/${pkgdir}`)
  fs.rmdirSync(`${srcdir}/${pkgdir}`); // pkgdir should be empty
}

svelteKitPrepare();

old version: svelte.prepare.sh
#!/bin/sh

pkgdir=package # svelte.config.js: kit.package.dir
srcdir=.src

set -e # throw on error
set -o xtrace # print commands

if [ -d "$srcdir" ]
then
  if ! (rmdir "$srcdir") # remove empty srcdir
  then
    echo "error: srcdir $srcdir is not empty"
    exit 1
  fi
fi

mkdir "$srcdir"

npm run build

# move all files except $srcdir and .git
find . -mindepth 1 -maxdepth 1 '(' -not -name "$srcdir" -and -not -name .git ')' -exec mv -t "$srcdir" '{}' ';'

# move package files back
find "$srcdir/$pkgdir" -mindepth 1 -maxdepth 1 -exec mv -t ./ '{}' ';'

rmdir "$srcdir/$pkgdir"

Alternatives considered
No response
Importance
i cannot use SvelteKit without it
(no seriously, "install from git" is a standard feature of npm)
Additional Information
No response

I have a hunch that the solution to this will overlap with https://github.com/sveltejs/kit/issues/2242, though I don't have a clear idea off the top of my head what the best answer is

closed accidentally

overlap with #2242

not really ...
here: fix the production environment for "install from git"
the library should be javascript and d.ts files, just like "install from npm"
import/require should "just work" (package.json should point to correct paths)
there: fix the development environment, work with typescript files
may be useful for deno / ts-node, to run typescript directly
may be useful to add dependencies as typescript in src/ (not in node_modules/),
and compile project and dependencies together (im not sure how useful that is)

Can this be solved already by creating a manual exports map in the package.json of the project?
"exports": { ".": "./package/index.js", ..}

i still think its easier to emulate npm publish package/ by moving ./package/* to ./
because then i have the exact same folder layout as with "install from npm"
and im not fighting npm (see below)
example https://github.com/milahu/svelte-jsoneditor/tree/fix-install-from-git-2
alternative solution:
it kind-of works when i patch node_modules/svelte-jsoneditor/package.json from
  "svelte": "index.js",
  "module": "dist/jsoneditor.js",
  "main": "dist/jsoneditor.js",

to
  "svelte": "package/index.js",
  "module": "package/dist/jsoneditor.js",
  "main": "package/dist/jsoneditor.js",

by running this after npm run build
#! /usr/bin/env node

import fs from 'fs'

const pkg = JSON.parse(fs.readFileSync('./package.json', 'utf8'))

for (const key of ['svelte', 'module', 'main']) {
  if (!pkg[key]) continue
  // workaround: avoid double-patching
  // FIXME why is this script called twice
  if (pkg[key].startsWith('package/')) continue
  pkg[key] = 'package/' + pkg[key]
}

fs.writeFileSync('./package.json', JSON.stringify(pkg, null, 2) + '\n', 'utf8')

example https://github.com/milahu/svelte-jsoneditor/tree/fix-install-from-git-3
problem is, npm is deleting the generated files in package/dist/
and i still have no idea why exactly ...
npm --loglevel silly did not help
also when i add "files": "*" to package.json
.gitignore is not included in the github tarball
to compare, pnpm is keeping all generated files
i also tried
  "exports": { ".": "package/index.js" },

and
  "exports": { "./*": "package/*" },

... but then npm is deleting the generated files in package/
in svelte-jsoneditor, the module field is needed by the rollup config

reproduce

cd $(mktemp -d)
git clone --depth 1 https://github.com/sveltejs/template/ svelte-project
cd svelte-project
npm install

cat >src/App.svelte <<'EOF'
<script>
  import { JSONEditor } from 'svelte-jsoneditor'
  let content = {
    text: undefined, // used when in code mode
    json: { array: [1, 2, 3] }
  }
</script>
<div>
  <JSONEditor bind:content />
</div>
EOF

# fix rollup: [!] Error: Invalid value "iife" for option "output.format" - UMD and IIFE output formats are not supported for code-splitting builds.
sed -i "s|format: 'iife',|//&|" rollup.config.js
sed -i "s|file: 'public/build/bundle.js'|dir: 'public/build'|" rollup.config.js
sed -i "s|/bundle.js'|/main.js' type='module'|" public/index.html

npm add -D https://github.com/josdejong/svelte-jsoneditor
npm run dev
# Error: Could not load node_modules/svelte-jsoneditor/index.js (imported by src/App.svelte): ENOENT: no such file or directory
# problem: `build` script was not run in `prepare`

# install from git: run `build` in `prepare`
# note: with npm, build takes about four minutes, also because of typescript typechecking
# svelte-kit: 20 seconds
# rollup: 80 seconds - with esbuild: 40 seconds

# version 2: move ./package/* files to ./
npm rm svelte-jsoneditor # force re-install
npm add -D https://github.com/milahu/svelte-jsoneditor#fix-install-from-git-2
npm run dev

# version 3: patch paths in package.json
npm rm svelte-jsoneditor # force re-install
npm add -D https://github.com/milahu/svelte-jsoneditor#fix-install-from-git-3
npm run dev

I think this may have been solved by #8922


Improvement enable bitmap runtime filter by default

Proposed changes
Issue Number: close #xxx
Problem summary
Describe your changes.
Checklist(Required)

[ ] Does it affect the original behavior
[ ] Has unit tests been added
[ ] Has document been added or modified
[ ] Does it need to update dependencies
[ ] Is this PR support rollback (If NO, please explain WHY)

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 33.92 seconds
stream load tsv:          461 seconds loaded<PHONE_NUMBER>9 Bytes, about 154 MB/s
stream load json:         39 seconds loaded<PHONE_NUMBER> Bytes, about 57 MB/s
stream load orc:          74 seconds loaded<PHONE_NUMBER> Bytes, about 14 MB/s
stream load parquet:          31 seconds loaded 861443392 Bytes, about 26 MB/s
https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/tmp/20230309130819_clickbench_pr_111502.html

run buildall

run buildall

run buildall

run buildall


WIP : Hindi translation

Get started and Home page translated

Hi @shaharyar-shamshi excited to see this getting started. It looks like a number of files were deleted in this pull request that we need to keep. Can you try closing this and opening a new PR with only the files you modified? Thanks!


[FEAT] Bump Typescript target to Node 14 (ES2020)

This change:

Improves performance (native async/await is faster than __awaiter)
Improves debugging (error stacktraces are preserved through async/await)
Reduces bundle size a bit (no var __awaiter in generated code)

This should be a safe change, as Node 14 is already required.

@Ginden the current in dev version bumps it to esnext
https://github.com/nats-io/nats.js/blob/cd48c792668af0de6689b104a5efce2dbe5841a4/transport-node/tsconfig.json#L3


TypeError: init() got an unexpected keyword argument 'proxies'

Traceback (most recent call last):
File "/home/dell/stealth/ChatDev/run.py", line 24, in
from chatdev.chat_chain import ChatChain
File "/home/dell/stealth/ChatDev/chatdev/chat_chain.py", line 14, in
from camel.web_spider import modal_trans
File "/home/dell/stealth/ChatDev/camel/web_spider.py", line 18, in
client = openai.OpenAI(
File "/home/dell/anaconda3/envs/stealth_env_1/lib/python3.9/site-packages/openai/_client.py", line 107, in init
super().init(
File "/home/dell/anaconda3/envs/stealth_env_1/lib/python3.9/site-packages/openai/_base_client.py", line 738, in init
self._client = http_client or httpx.Client(
TypeError: init() got an unexpected keyword argument 'proxies
getting this error now even the latest branch.

In my case, I resolved the issue by running pip install --upgrade openai

thanks. worked


adding how to link forked repo to a project board

Why:

Closes https://github.com/github/docs/issues/523
What's being changed:

Changed the content of the note and its position (https://docs.github.com/en/github/managing-your-work-on-github/linking-a-repository-to-a-project-board)

Check off the following:

[ ] I have reviewed my changes in staging. (look for the deploy-to-heroku link in your pull request, then click View deployment)
[x] For content changes, I have reviewed the localization checklist
[x] For content changes, I have reviewed the Content style guide for GitHub Docs.

Thanks so much for opening a PR with this fix @shades-7! I edited your original comment to read Closes https://github.com/github/docs/issues/523. When you write it that way, it automatically links the pull request to the issue (you can see it in the sidebar now!) and the issue will close once the PR is merged 🎉
I'll get this triaged for review 💖

Очень благодарна за ответ!!вы супер!!хотелось бы поучится у вас!!
Отправлено из мобильной Почты Mail.ru
понедельник, 22 февраля 2021 г., 20:40 +1000 от<EMAIL_ADDRESS><EMAIL_ADDRESS>
@felicitymay requested changes on this pull request.
👋🏻 Hi  @shades-7
Thanks for your PR. It was really thoughtful of you to include a screenshot so that I could see how your changes looked (and good to see that you have managed to get the docs system working locally) ✨
For future reference, when you raise a PR, we automatically create a temporary server with your changes, as part of the testing. On the repository "Conversation" tab, there's a section called "This branch was successfully deployed" which contains a  View deployment button to the staging environment. You can see your changes here:  https://docs-3774--shades-7docs.herokuapp.com/en/github/managing-your-work-on-github/linking-a-repository-to-a-project-board .
I've added a comment with a change, but otherwise this looks good to merge.
In  content/github/managing-your-work-on-github/linking-a-repository-to-a-project-board.md :

@@ -30,6 +26,12 @@ Anyone with write permissions to a project board can link repositories owned by

Click Link. To unlink, click Unlink.

+{% note %}

+Note: In order to link a repository to your organization or user owned project board the repository needs to have issues enabled (In forked repositories issues are disabled by default).  "For information on how to see if issues are enabled or disabled for a repository, see "Disabling issues for a repository ."
Thanks for the changes to the note. I'm going to suggest a couple of small punctuation changes. Also, I think it would be helpful to mention the easy way to see whether issues are enabled for a repository, as suggested in the content design plan. ⬇ Suggested change
-Note: In order to link a repository to your organization or user owned project board the repository needs to have issues enabled (In forked repositories issues are disabled by default).  "For information on how to see if issues are enabled or disabled for a repository, see "Disabling issues for a repository ."
+Note: In order to link a repository to your organization or user owned project board the repository needs to have issues enabled. That is, the repository has an "Issues" tab (in forked repositories issues are disabled by default).  For information on how to enable or disable issues for a repository, see "Disabling issues for a repository."
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly,  view it on GitHub , or  unsubscribe .


I tested different scripts and source code compilation in two different environments based on Ubuntu 20.04.2-based kernel 5.4.0-74 and Ubuntu 18.04.5 kernel 5.4.0-74, including the ./install script on GitHub running vck5000 And the ./install script in the release file downloaded from the file sent by the security station center, the source code compilation includes the xrt.deb file, but even though I have tried so many installation situations, it always reaches 100% during the installation process The above problem occurred at 96 o'clock, and it always said that my firmware could not be loaded. Why is this? Can you tell me the solution to this problem?
(I connected the VCK5000 through the PCIE interface of the graphics card, and I can detect that the board is connected and existing)

We are also facing same issue on our vck5000 board, have you got any working solution for this issue @China-CC-lon ?

I don’t know, and I’ve been facing this problem all the time. I’ve tried many methods and the firmware can’t be loaded. Some people say that the kernel does not match, and some people say that the computer’s CPU does not work. The strange thing is that many people directly compile the script and install it directly. , And I always have the same problem when compiling scripts or compiling source code, so I ask questions here.

https://gist.github.com/ombhilare999/130a920da6d9a90fa0a833da059acec3
One of the Xilinx engineers told us thst shell is not matching, that's why the best way is to flash new pdi on to the board. I have compiled all the steps on the above link.
If you are trying that on your board then let me know the results.
Regards,
Omkar Bhilare
<EMAIL_ADDRESS>

It was fine after I replaced a CPU and motherboard.


Add info on how to generate a shared secret.

Add info on how to generate a shared secret.

Thank you!


hu (Hungarian - magyar) locale

The hu (Hungarian - magyar) locale is not shown at
https://github.com/andrewplummer/Sugar/tree/master/lib/locales
Also the default locale, i.e. en-US, is not shown there either; and, we don't know where it is.
Could you please advise how we can add the hu locale?
Thank you

Hungarian doesn't exist yet but I would be very happy if you would like to add it! See the "Adding custom locales" in the readme or if you look at one of the other locales the format should be fairly straightforward! Let me know if you have issues.

Could not see "Adding custom locales" in the https://github.com/andrewplummer/Sugar/blob/master/README.md. Can you please provide a direct link? Thank you

Sorry it's this one: https://github.com/andrewplummer/Sugar/blob/master/README.md#addingcustomizing-locales
should have linked to it above
en-US file is embedded in date.js ... it's the same format but a little bit specialized... the other locale files are probably simpler

@andrewplummer thank you for your advise. Hopefully the pull request https://github.com/andrewplummer/Sugar/pull/659 can be merged.

@andrewplummer can you accept https://github.com/andrewplummer/Sugar/pull/659?
If not, can you please advise what you require?
Thank you


WIP: Factoring out unfree non-redistributable vs. unfree redistributale licenses

Currently, we have a catch-all unfreeRedistributable license that is intended
to allow Hydra to build these packages; however, there are two issues:

It's not currently working (check any unfreeRedistributable package and you
will not see it on Hydra's jobset). For example, a search for aliza [1] on hydra [2]
comes up empty.

It obscures the actual license in question for a package.

[1] https://github.com/NixOS/nixpkgs/blob/master/pkgs/applications/science/medicine/aliza/default.nix
[2] https://hydra.nixos.org/jobset/nixpkgs/trunk#tabs-jobs

CC @xeji @orivej

Nice! Any reason you closed this? This seems like a very sensible thing to do


KubernetesConfiguration Regenerate SDKs for API Version 2020-07-01-preview

MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Changelog
Please ensure to add changelog with this PR by answering the following questions.

What's the purpose of the update?

[ ] new service onboarding
[ ] new API version
[ ] update existing version for new feature
[ ] update existing version to fix swagger quality issue in s360
[ ] Other, please clarify

When you are targeting to deploy new service/feature to public regions? Please provide date, or month to public if date is not available yet.
When you expect to publish swagger? Please provide date, or month to public if date is not available yet.
If it's an update to existing version,  please select SDKs of specific language and CLIs that require refresh after swagger is published.

[ ] SDK of .NET (need service team to ensure code readiness)
[ ] SDK of Python
[ ] SDK of Java
[ ] SDK of Js
[ ] SDK of Go
[ ] PowerShell
[ ] CLI
[ ] Terraform
[ ] No, no need to refresh for updates in this PR

Contribution checklist:

[ ] I commit to follow the Breaking Change Policy of "no breaking changes"
[ ] I have reviewed the documentation for the workflow.
[ ] Validation tools were run on swagger spec(s) and errors have all been fixed in this PR. How to fix?

If any further question about AME onboarding or validation tools, please view the FAQ.
ARM API Review Checklist

[ ] Ensure to check this box if one of the following scenarios meet updates in the PR, so that label “WaitForARMFeedback” will be added automatically to involve ARM API Review. Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs, all “removals” and “adding a new property” no more require ARM API review.

Adding new API(s)
Adding a new API version
[ ] Ensure to copy the existing version into new directory structure for first commit (including refactoring) and then push new changes including version updates in separate commits. This is required to review the changes efficiently.
Adding a new service

[ ] Please ensure you've reviewed following guidelines including ARM resource provider contract and REST guidelines. Estimated time (4 hours). This is required before you can request review from ARM API Review board.

[ ] If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.

Breaking Change Review Checklist
If there are following updates in the PR, ensure to request an approval from Breaking Change Review Board as defined in the Breaking Change Policy.

[ ] Removing API(s) in stable version
[ ] Removing properties in stable version
[ ] Removing API version(s) in stable version
[ ] Updating API in stable or public preview version with Breaking Change Validation errors
[ ] Updating API(s) in public preview over 1 year (refer to Retirement of Previews)

Action: to initiate an evaluation of the breaking change, create a new intake using the template for breaking changes. Addition details on the process and office hours are on the Breaking change Wiki.
Please follow the link to find more details on PR review process.

@ArcturusZhang @qiaozha @jsntcy @msyyc @lirenhe Can you please look over this? We need to get our SDK generation out quickly to make deadlines for public preview. Thanks!

@jonathan-innis Are you trying to resolve this issue? https://github.com/Azure/sdk-release-request/issues/1348 But from the file changes, it's not change it into multi-packages.

@jonathan-innis Are you trying to resolve this issue? https://github.com/Azure/sdk-release-request/issues/1348 But from the file changes, it's not change it into multi-packages.

We are trying to have a solution where we release SDKs for the version we just updated 2020-07-01. We aren't necessarily interested in breaking into packages

Ultimately we just need to be able to release these SDKs with the updated swagger spec with this version

@kairu-ms  @jsntcy @qiaozha @msyyc  @00Kai0 Can you please look over this today so that we can get this merged in today?

@jonathan-innis Hey Jonathan, when looking at your PR, it seems you guys removed an existing stable tag "tag: package-2021-03
" and changed it to "tag: package-preview-2020-07-extensions"
Please be aware that this is not allowed, the suggested approach is to create a new tag that takes the same input files, for example, your latest API is "2021-04", you should create a "2021-04-preview"

cc @josefree


API Endpoint to download entire dataset

Requesting an API endpoint to get the entire dataset if possible.

I am not sure how that would work out? Do you have an example?


Localization?

My app supports multiple languages and I would like the user to receive the notification in it's own language.
First I thought I could use Audiences with device propertie "Language" and send a localized message for every language I support. The problem is that I need to send a message to Device ID and according to the api I can not combine notification_target . I have to choose between "type" : "audiences_target" or "type" : "devices_target". Intercepting the message isn't an option either because it is called after the notification is received.
So how can I send localized messages to specific devices?

@michelmoorlag The comments feature of our documentation is intended to enable customers to suggest changes to the docs or ask clarifying questions about the docs.
App Center support is provided directly from within the App Center portal. Any time you need help, just click the blue chat button in the lower-right corner of any page and our dedicated support team will respond. For additional information, see the [App Center Help Center] (https://intercom.help/appcenter/getting-started/welcome-to-app-center-support).


Consider the use case of a PV Secondary that is updated by a dealer using a laptop that is running as a Primary

In the previous workshop, this functionality was indicated as a helpful milestone, for a dealer to be able to provide updates from a Primary running on a laptop (or desktop running in a vehicle bay, the essential concept is that the Primary doesn't have to be embedded, nor does it have to be assembled with the vehicle).  When considering the architecture, I noted a few concerns, please comment if you know of others or solutions to these:

The Secondary may not have established trust for the Primary
The Secondary may not have connection information for the Primary
The Secondary may be serviced by multiple Primaries (different dealerships for example)
The Primary may not deliver manifest information back to the Director in a timely manner

One example that highlights these concerns -
A vehicle is taken into the local dealership for updates and the Secondary communicates with the dealer's Primary and reports an attack through the vehicle manifest. The local dealership doesn't have the resources to provide a fix and the vehicle is transferred to another (regional) dealership. The local dealership's Primary doesn't report the vehicle manifest back to the Director (maybe a bad internet connection or end of the day the system was shut down). The regional dealership's Primary doesn't receive the attack report because it has already been reported to the local dealership's Primary (perhaps this is handled already and I'm not aware of it?). With the switch between Primaries and delay in manifest delivery, this example would exercise 1, 2, 3 and 4.
Note that the attack may not appear in the original manifest, perhaps it is detected and mitigated during the update process but the local dealership is compromised and cannot complete the update.
If already addressed, please close the issue.

Let's certainly discuss before closing the issue.
How the manifest is handled is really up to the implementers of Uptane.  If
they want to clear it each time, use an append only log, etc., it is up to
them.  To us, it is just bytes.  Perhaps this is under specifying things,
but I would rather be under than over prescriptive in this case.
However, I do not believe it makes sense for the Primary to be able to
indicate whether a manifest was received, etc.  This is really something
that the director (who consumes the content) must say.
I suppose one point that we haven't discussed is how the secondary decides
to talk with a primary.  I have been assuming that since the primary is not
really trusted, communication with anyone claiming to be a primary
(especially if they have physical access) is fine.  However, I wonder what
others think?  Trishank: Could you perhaps go through the threat model and
think about this case carefully to see if we missed anything?
Thanks,
Justin
On Wed, Mar 15, 2017 at 5:24 PM, Cameron Mott<EMAIL_ADDRESS>wrote:

In the previous workshop, this functionality was indicated as a helpful
milestone, for a dealer to be able to provide updates from a Primary
running on a laptop (or desktop running in a vehicle bay, the essential
concept is that the Primary doesn't have to be embedded, nor does it have
to be assembled with the vehicle). When considering the architecture, I
noted a few concerns, please comment if you know of others or solutions to
these:

The Secondary may not have established trust for the Primary
The Secondary may not have connection information for the Primary
The Secondary may be serviced by multiple Primaries (different
dealerships for example)
The Primary may not deliver manifest information back to the
Director in a timely manner

One example that highlights these concerns -
A vehicle is taken into the local dealership for updates and the Secondary
communicates with the dealer's Primary and reports an attack through the
vehicle manifest. The local dealership doesn't have the resources to
provide a fix and the vehicle is transferred to another (regional)
dealership. The local dealership's Primary doesn't report the vehicle
manifest back to the Director (maybe a bad internet connection or end of
the day the system was shut down). The regional dealership's Primary
doesn't receive the attack report because it has already been reported to
the local dealership's Primary (perhaps this is handled already and I'm not
aware of it?). With the switch between Primaries and delay in manifest
delivery, this example would exercise 1, 2, 3 and 4.
Note that the attack may not appear in the original manifest, perhaps it
is detected and mitigated during the update process but the local
dealership is compromised and cannot complete the update.
If already addressed, please close the issue.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/uptane/uptane/issues/33, or mute the thread
https://github.com/notifications/unsubscribe-auth/AA0XD1YiGmDFFam729jcVRlZfW9QIF20ks5rmFcNgaJpZM4MejIK
.

However, I do not believe it makes sense for the Primary to be able to
indicate whether a manifest was received, etc.  This is really something
that the director (who consumes the content) must say.

I agree. Is the thinking that the director should include metadata about what manifest it last received from each ECU?

I suppose one point that we haven't discussed is how the secondary decides
to talk with a primary.  I have been assuming that since the primary is not
really trusted, communication with anyone claiming to be a primary
(especially if they have physical access) is fine.  However, I wonder what
others think?  Trishank: Could you perhaps go through the threat model and
think about this case carefully to see if we missed anything?

Okay, let me think about this, and get back to you...


Set workspaces typescript version

https://twitter.com/housecor/status/1739622823004434791

closed in favour of https://github.com/db-ui/elements/issues/2202


M1.5: Implement warning: Alphabetical order

We need to notifiy if the key is not in alphabetical order.
AC:

Implement alphabetical order warning

This ticket is blocked by https://github.com/montevideo-tech/cmcd-validator/issues/78


🐛 [BUG] - Page Not Found after clicking on slack logo

Description
When clicking on the slack logo from the home page it gives a Page Not Found error.
Reproduction steps
1. Go to https://opentofu.org/
2. Click on slack icon
3. See error

Screenshots
https://opentofucommunity.slack.com/archives/C05QF5HA0BH/p1697328997314189

Logs
No response
Browsers
Chrome
OS
Windows

This seems to be a result of #190. Should that PR be reverted till the TODO about using version 3 can be completed?

@jjshanks thanks for reporting, the fix was implemented, could you verify whether it works correctly on your end?


typeahead close select on form submit

I would like to get the select list to close when the form is submitted with a value which is not on the list (using typeahead-focus-first set to false).
I used the typeahead plunker example as a starting point.
When the user hits enter, the storeItem function fires, but the list does not close.
    <form ng-submit="storeItem()">
      <input type="text"
        typeahead="state for state in states | filter:$viewValue | limitTo:8"
        typeahead-focus-first="false"/>
    </form>

The full function:
    $scope.storeItem = function() {
       $scope.selected = Date.now();
    };

See full plunker here
If this is not an issue, and you have an idea for a workaround, I'd appreciate if you could answer this SO question

This issue is in the typeahead directive keydown method:
// if there's nothing selected (i.e. focusFirst) and enter is hit, don't do anything
if (scope.activeIdx == -1 && (evt.which === 13 || evt.which === 9)) {
  return;
}

Which will leave the popup open when the input element loses focus.  To reproduce in the plunker mentioned above, in the first typeahead, type a then TAB.

I curious if something like this can help
here

Hello,
I have the same issue ... here is my plunker:
http://plnkr.co/edit/FrjocQVyRKt0prwJtIzh?p=preview
I made two sample :

One with ng-submit (handle the ENTER key), it does not close typeahead
Second with ui-keypress (no form, no ng-submit) AND typeahead-on-select.

The both samples are fine for me :
Case 1 : The user enter a "word" -> Press Enter -> it submit a search
Case 2 : The user enter a "word" -> select a suggestion -> it submit a search with the selected value.
But, for the two case, it  doesn't close the typeahead
I try your solution, @shootermv, it works fine, but I don't know if it's a bit quirky, no ?

i have the same problem. After hitting enter with none of the sugestions selected the dropdown menu wont close.


Fix for Missing Microsoft.Win32.Registry error on Desktop

This is a fix for issue #755.   However the issue runs relatively deep and this may be just a quick fix.   I will open another issue to see about a better solution.

The 2.0.31 will have this fix, however it will probably tomorrow before it is published on Nuget.

This was fixed in #816


dev: add git commit field and clean up admin layout

This should add git_commit as a field and add it to the admin list view. It should also add a boolean field for if the metadata is null to the list view (make it easier to see if there is a bigger issue with an error)
For is_docker and hostname, this should remain in the database, but it will be removed from the list view (i.e., you'll have to click into a trial to see these fields). You can see in the migration file that these fields haven't been removed from the database.

Perfect, that is what I thought then. I just wanted to make sure I understand it. We can merge then!


delete conversation for current user

Hi saw in the online documentation that deleting a conversation is implemented but it will delete the conversation for the others participants as well.
Do you have an idea when the option to delete only for the current participant will be available ?
Thanks

We are awaiting support for this from our server.  My understanding is that this support is close to being available.  That said, we are also working towards a GA release of the Web SDK, and may add support for that feature in an update rather than as part of GA.

Thank you for your answer.
Is there a roadmap available somewhere ?

There are two types of roadmaps, neither is currently public:

The roadmap for what our servers/services will provide.  For more information on this, you might get a better answer via http://slack.layer.com
The roadmap for what the WebSDK itself and its spinoff projects (such as a UI framework) will provide.
We'll be fleshing that out once this goes GA.  For now, things high in the list are:

Adding support for any of the missing services that the server provides; including delete for current participant, announcements, Querying, etc.
Improved offline support via IndexedDB
A UI Framework

None of these represent small investments of effort, but we hope to have clearer priorities and sequencing of these by GA.  Feel free to register with our slack account and chime in with feature requests... requests made there will get the attention of more people than just our javascript team.

Thank you for this detailed answer


[TS migration] Migrate 'SpacerView.js' component to TypeScript

Details

Fixed Issues

$ https://github.com/Expensify/App/issues/31937
PROPOSAL:
Tests

[x] Open any task and verify that spacer is displayed as expected
[x] Verify that no errors appear in the JS console

Offline tests

QA Steps

[x] Open any task and verify that spacer is displayed as expected
[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native

Android: mWeb Chrome

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari

MacOS: Desktop

Looks like we have conflicts here

@roryabraham conflict solved

Looks like reviewer checklist is failing because some new checks were added to it:

[ ] If the PR modifies the form input styles:

[ ] I verified that all the inputs inside a form are aligned with each other.
[ ] I added Design label so the design team can review the changes.

And none of these are relevant in this case, so I'm going to ignore the failing check and merge. Would have been nice to make those part of the newer dynamic checklist paradigm

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/roryabraham in version: 1.4.15-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

@pasyukevich could you explain which spacer to validate?

🚀 Deployed to production by https://github.com/jasperhuangg in version: 1.4.15-5 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

@kavimuru It can be validated with the spacer in the task view


train the model with only loss_ccl(camera-agonstic memory )

sorry to bother you. I'd like to ask a question. when I train the model with loss_ccl only, I can't achieve a good result, it will break down soon.

Have you solved this problem?


Update test.py

Since the code is updated to torchvision v0.3 and we are no more using layer_utils.roi_layers nms.py

thanks