[SUPPORT] After running :project:focus unrelated projects fail to configure

We're trying to use this plugin in a large repo. However, when the focus is applied, it generates a .focus file and focus.settings.gradle which appears to have all of the expected projects.
Though, when running ./gradlew clean, it attempts to configure projects that are not in the focus file.
I've been debugging this for a few hours and can't produce a minimal reproducible set. Any help would be appreciated in what to track down. If I hazard a guess, there's some Plugin that is pulling in dependencies recursively -- but I am unsure.

Hey Kevin. This is sort of a chicken and egg problem, and is know.  clean
removes task output, and the focus file is a task output. If we didn't
remove it, we'd risk people getting stuck in a focus state without being
able to get out of it. This is specific to clean, and possible just the top
level clean. Other tasks should focus just fine.
On Fri, Jul 7, 2023, 15:30 Kevin Brightwell @.***>
wrote:

We're trying to use this plugin in a large repo. However, when the focus
is applied, it generates a .focus file and focus.settings.gradle which
appears to have all of the expected projects.
Though, when running ./gradlew clean, it attempts to configure projects
that are not in the focus file.
I've been debugging this for a few hours and can't produce a minimal
reproducible set. Any help would be appreciated in what to track down. If I
hazard a guess, there's some Plugin that is pulling in dependencies
recursively -- but I am unsure.
—
Reply to this email directly, view it on GitHub
https://github.com/dropbox/focus/issues/37, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAJ4S3WTPYEQDYJDQVKXV43XPBWWBANCNFSM6AAAAAA2CICBPA
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Oh absolutely I don't think it's caused by the plugin. I'm curious if you've got any suggestions on chasing down the issue. I find it odd that we're getting projects applied that should be unfocused. I'm sure it's in our build, but the gradle logs are keeping their secrets to themselves.

Yeah, it's just the clean task specifically. Because of it's contract we
have to remove the focus file when you clean. If you focus and then do
other tasks it should work as expected.
On Sat, Jul 8, 2023, 12:25 Kevin Brightwell @.***>
wrote:

Oh absolutely I don't think it's caused by the plugin. I'm curious if
you've got any suggestions on chasing down the issue. I find it odd that
we're getting projects applied that should be unfocused. I'm sure it's in
our build, but the gradle logs are keeping their secrets to themselves.
—
Reply to this email directly, view it on GitHub
https://github.com/dropbox/focus/issues/37#issuecomment-1627433448, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAJ4S3XIJRRXHEMOB7HX6U3XPGJZLANCNFSM6AAAAAA2CICBPA
.
You are receiving this because you commented.Message ID:
@.***>

I'll verify soon, but that is pretty entertaining that I happened to randomly pick a task that happened to have the clean contract that's incompatible with the entire premise.
I really appreciate the time, I'll have to check this in a few days. I'll close off the issue after I verify. Thank you!

😢 Seems like that wasn't the issue. I'm unable to import the project into IntelliJ after :focus -- same error. I think I'll have to do some process of elimination with all the different plugins.

We finally figured out what the issue is. More details in https://github.com/gradle/gradle/issues/27115
In short, the problem is how the include function in settings.gradle.kts works:
"As an example, the path a:b adds a project with path a:b, name b and project directory $rootDir/a/b. It also adds the a project with path :a, name a and project directory $rootDir/a, if it does not exist already."
We have so many cases that a and a:b are both Gradle projects.
I am wondering if the Dropbox team faced this problem. If so how you went about resolving it? cc @rharter

Hmm, are you saying that you have a project structure like
.
└── a/
    ├── build.gradle
    ├── src/
    │   └── main
    └── b/
        ├── build.gradle
        └── src/
            └── main

And your generated focus.settings.gradle contains include(":a:b"), but you don't want it to include :a and it does?
If so, that's not something we've seen at Dropbox and, unfortunately, I can't even think of a way to work around that. That suggests that there's no way to include project :a:b without including :a, and the point of the Focus plugin is to only include the required projects. If we were to consider :a a "required" project in this case then we would also have to include it's dependencies, and that quickly nullifies any benefit of the Focus plugin.

Yes you have summarized the problem correctly. And yes this is not a focus plugin issue. It is a gradle issue.
I think this issue can be closed. Maybe action item could be to improve the documentation to mention about this case and then point to the suggestion at https://github.com/gradle/gradle/issues/27115#issuecomment-1834406831.


Script UI - Script Edit Page

The Script Edit Page is a simple editor for the script. Check if there is language highlighter available for javascript, ruby and python, which would be awesome.
So the following fields are required;

name; name of the script, without prefix or file extension, e.g "myscript"
language; one of "js", "ruby", "python"
description; a human-readable description of the functionality of the script.
inputs; a list of named inputs. Validation against what is used in the script is not required. See #77.
code; the actual code that is going to be executed

Ideally, the Execution/Debug support should be integrated into this page directly, rather than totally separate. That could simply be a button to push, which asks for which topic it should be bound to. Backend will pick up the latest value from that topic and run the script simulated on the backend, and report back values/keys sent to other topics.

Add Script page was already added.
How should test button work? I understand it should be possible to test script before it is added = stored in cassandra.
Is there a separate topic where I can send script for test? Do you have any particular pattern in mind on how to handle that async communication, where the value should be reported back to the frontend?


FR: Support currency abbreviations?

Currently symbols and written out currency names appear to be supported. I would love for abbreviations to be supported as I have no idea how to convert for example to "Canadian dollars". In raycast for example I'd type in 5 eur to cad and would get the result. With numbat, I don't know how to achieve the same thing.

You can use abbreviations, but they must be in all-caps: EUR, CAD, etc.
Note that you can type info euro, info €, info canadian_dollar, … to see all aliases. We also have the full list of supported units (with all aliases) in the documentation: https://numbat.dev/doc/list-units.html
If you would like to use lowercase abbreviations, you can still set them up in your init.nbt file:
unit eur = EUR
unit cad = CAD
…

How embarassing I didn't figure this out on my own. Works great thanks!

It would be easy to implement, but I don't think we want that. There are too many short unit identifiers already. Imagine things like N for Newton, J for Joule, W for Watt. If we make unit matching case insensitive, we would not be able to use n, j, w as identifiers for user-defined variables (or other units).

thanks for the reply!! i didn't think about variables. To be honest I have barely scratched the surface of what numbat can do.
User story: I am building a raycast like launcher for fun and added numbat for quick caculations/conversions. Optional case insensitivity would improve this usecase quite a bit:

Anyway thanks for this awesome project. It's super nice to work with this crate and I really appreciate the replies :)

I think it's reasonable to add aliases like eur and usd. Would there be any issues with that?


Update search map for caniuse.com

It's been a year since this project has initially been released and I am really proud of the immense amount of downloads it actually has by now.
To provide the best prefixer experience possible, we should update the information  from caniuse.com and check for new search key words for new CSS features.

Happening with #107 as well.


🐛 BUG: Variant metrics are namespaced by repo and airbyte-wrapper shares repo

The variant metrics are currently namespaced by repo name because up until now the repo was uniquely 1-1 with a tap. With tap-airbyte-wrapper many plugins share the same repo name so current state will likely lump all usage into one metric thats shared across all airbyte variants.
An example is https://github.com/meltano/hub/blob/78f076c0bf9b5177036ea509e33fcdf6bc31da2c/_data/variant_metrics.yml#L1143.
Potential Solution:

It might be better to namespace metrics based on {plugin_type}-{plugin_name}-{plugin_variant} like we do in most other places.
This would require an update to Squared pipelines that produce the data prior to working
squared related link https://github.com/meltano/squared/issues/514

@pnadolny13 good catch on this!

I think this was resolved naturally once we set the repo name to reference the subdirectory in the airbyte repo like https://github.com/airbytehq/airbyte/tree/master/airbyte-integrations/connectors/source-adjust and it flowed through Squared. I see plugin pages with different metrics:

https://hub.meltano.com/extractors/tap-adjust--airbyte/ - 3/8
https://hub.meltano.com/extractors/tap-jira--airbyte/ - 3/17
https://hub.meltano.com/extractors/tap-s3--airbyte/ - 13/9
https://hub.meltano.com/extractors/tap-amplitude--airbyte/ - 2/8


Add two new columns to database table

User Story #57
The new data we were given by Yavar has two entries of data that we need to include in the database. Creating the database needs to include these new columns.

Looked into what the new columns are, found out the type of data that each one needed to store, and then added them to the createtable.sql file.
I also found a spot in the docker-compose.yml file that allowed me to connect to the sql server over the localhost port.
{t:75}


Rune stones art

Cant have  invalid texture now, can we?
Either homebrew or find somewhere that has decent art.

Artwork looking mint


[Bug]: "Hey! There is a new version" pop up doesn't go away after clicking the "Refresh" button

Is there an existing issue for this?

[X] I have searched the existing issues

Description
Running self hosted community version witch docker-compose on Ubuntu 20.04.6.
After the automatic update to 1.9.51 the "Hey! There is a new version" pop up appears. When clicking the "Refresh" button the page reloads but the pop up appears again.
I've tried clearing chromes cookies/cache but no difference. The problem also occurs in Edge and Firefox.
Tried restarting the server Appsmith runs on but that didn't work either.
Steps To Reproduce

Open any page, in either editor och viewer modes
Click the "Refresh" button on the "Hey! There is a new version" pop up"
The page reloads and the pop apears agan and again

Public Sample App
No response
Environment
Production
Issue video log
No response
Version
Self hosted / 1.9.51

Hey @oskarannas, we're working to push the fix as a new version and should be out soon (in the next ~2h).
Thank you for your patience.

Hey @oskarannas, we're working to push the fix as a new version and should be out soon (in the next ~2h).
Thank you for your patience.

Wow, thats great! Thanks :)

Can confirm the fix works after upgrading, big thanks!


Cannot read properties of undefined (reading 'nvidia.com/gpu') when trying to clone a workload

Setup

Rancher version: v2.6-head (b7c9b89)
Browser type & version: any (currently using chrome)

Describe the bug

user is unable to clone a workload
To Reproduce

create a workload with a nodeport
wait for the workload to be active
clone the workload and enter valid settings
create from the clone

Result

user is presented with the error Cannot read properties of undefined (reading 'nvidia.com/gpu')

Expected Result
user should be able to clone from a workload
Screenshots

tested on 2.6-head (9ef92c2)

deploying a cloned workload now has no errors


Ignore auto-generated compile_commands.json in fast-pbkdf2

Do we want to do it for all directories under src/ with something like src/*/compile_commands.json?


NPoco and Datetime Kind

Hi
I am using NPoco (4.0.2) in an asp.net core website with Umbraco CMS 9.
My poco has a Datetime property and before I insert it into the database I use DateTime.Now() to set the value, which defaults to a datetime Kind of ‘Local’:

However, when the poco is hydrated back from the database then the Kind is now ‘Utc’ (Did NPoco do this?):

I used this code to force the Kind back to local/unspecified:
.ForEach(x => x.Created = DateTime.SpecifyKind(x.Created, DateTimeKind.Unspecified));
but is there a better convention or simpler way? thanks

If you're using attribute mapping I guess the following would work:
[Column(ForceToUtc = false)]
public DateTime MyDate {get; set;}

For fluent mapping you can use:
x.Column(y => y.MyDate).ForceToUtc(false);

IIRC you will get DateTimeKind.Unspecified for the returned dates if ForceToUtc is false.

thanks firedog - that property decorator worked a treat 😁

in case it helps anybody, this is how to set ForceToUtc to false for ALL columns on ALL types in your assembly
  var fluentConfig = FluentMappingConfiguration.Scan(scanner =>
      {
          scanner.Assembly(typeof(...a_class_in_your_assembly...).GetTypeInfo().Assembly);
          scanner.Columns.ForceDateTimesToUtcWhere(x => false);
      }
  );

  DbFactory = DatabaseFactory.Config(x =>
  {
      x.UsingDatabase(() => new Database("connString"));
      //didn't seem to be required x.WithMapper(new MyMapper()); // public class MyMapper : DefaultMapper { }
      x.WithFluentConfig(fluentConfig);
  });

  //feed dbfactory into your DI container
  services.AddScoped<NPoco.IDatabase>(x => DbFactory.GetDatabase());

this is also a solve for #443


Description Typo - Elusive Target - Mischief Cleric Lvl 6 Class Feature

Given at level 6 but description says level 8

Please report this to game developer. Vanilla subclass.

ahh my error


Fix api specs

In your API tests you can examine the response:
puts response.body

I modified one of the tests:
post<EMAIL_ADDRESS>application: FactoryGirl.attributes_for(:application), :format => :json
puts response.body

And it returned:
{"error":"reimbursement_needed is missing, profile_id is missing, hackathon_id is missing"}

This is because you're posting these fields under application, so the server gets params[:application][:hackathon_id], not just params[:hackathon_id]. You can decide to go either way, but obviously it needs to be consistent.
Closes #25.

Btw, check out https://github.com/yujinakayama/transpec and make all the RSpec expectations use a consistent syntax. Add config.raise_errors_for_deprecations! to RSpec spec_helper.rb then.

Coverage remained the same at 85.32% when pulling 54875a3f23204bca9d6d21b775ab7bbe02415ffb on dblock:fix-api-specs into aa2369694149a5fbe4f52bd0456250559ca7e5fa on hackcentral:master.

Awesome, thanks @dblock for your help with this!

Merged.


Annotation for a language

Hi,
I try to use @external for C only, but get an exception "Unexpected :"
the format I'm using is:
@c:external
ERPC1.5
Is that the correct usage?

Hi @nchokoev,
It's likely possible supported for next version of eRPC.

Hi @Hadatko,
Is it implemented in any branch currently?

Hi @nchokoev try develop branch.

Today i merged develop branch to master branch. Everything should be up-to-date.


Initial Implementation for Retrieving Crowdstrike Falcon Agent Stats

This will allow the extension to gather crowdstrike falcon agent stats.

Closed it by accident.  Implemented unit tests, requesting PR review.


DateRangePicker onChange not triggering during testing

[x] The issue is present in the latest release.
[x] I have searched the issues of this repository and believe that this is not a duplicate.

Current Behavior 😯
The feature works in the browser, but not during testing.
As far as I've tested it, the onChange of the DateRangePicker component doesn't get triggered, and the same events of the TextField component gets triggered, but not with the correct value.

Expected Behavior 🤔
I'm expecting for the value that I'm asserting through tests to be persisted.

Steps to Reproduce 🕹
I've tried creating a sandbox, but cannot get it to run properly. I'm saying this since the feedback for tests is missing.
https://codesandbox.io/s/daterangepicker-onchange-not-triggering-022cl

Steps:

Context 🔦

Your Environment 🌎

Tech
Version

@material-ui/core
v5.0.0-alpha.5

@material-ui/pickers
v4.0.0-alpha.12

React
v16.13.1

Browser

TypeScript

etc.

So the problem in our (i.e. @mnemanja and mine) tests was that the date range picker is rendered in mobile mode by default.
The picker library uses media queries to determine if you are using a desktop environment. We were running our tests with jest and jsdom 16. It does not implement window.matchMedia. Defining matchMedia made our tests work:
import { render, screen } from '@testing-library/react';
import userEvent from '@testing-library/user-event';

beforeEach(() => {
  // add window.matchMedia
  // this is necessary for the date picker to be rendered in desktop mode.
  // if this is not provided, the mobile mode is rendered, which might lead to unexpected behavior
  Object.defineProperty(window, 'matchMedia', {
    writable: true,
    value: (query: string): MediaQueryList => ({
      media: query,
      // this is the media query that @material-ui/pickers uses to determine if a device is a desktop device
      matches: query === '(pointer: fine)',
      onchange: () => {},
      addEventListener: () => {},
      removeEventListener: () => {},
      addListener: () => {},
      removeListener: () => {},
      dispatchEvent: () => false,
    }),
  });
});

afterEach(() => {
  delete window.matchMedia;
});

it('should be possible to set a start and end date', async () => {
  render(<MyComponent />);

  const startDateInput = await screen.findByRole('textbox', { name: /start date/i });
  const endDateInput = screen.getByRole('textbox', { name: /end date/i });

  userEvent.clear(startDateInput);
  // this has to be typed one number at a time for the formatting to work
  await userEvent.type(startDateInput, '20200106', { delay: 1 });

  userEvent.clear(endDateInput);
  await userEvent.type(endDateInput, '20200109', { delay: 1 });

  expect(screen.getByRole('textbox', { name: /start date/i })).toHaveValue('2020-01-06');
  expect(screen.getByRole('textbox', { name: /end date/i })).toHaveValue('2020-01-09');
});

It would be nice if this behavior (mobile wrapper being used by default) was documented more clearly. And maybe also having a section in the documentation for those testing pitfalls.

@Lukas-Kullmann Thanks for sharing the solution. Considering this pool, I think that it should default to desktop, not mobile.
What do you think about this diff?
diff --git a/lib/src/wrappers/ResponsiveWrapper.tsx b/lib/src/wrappers/ResponsiveWrapper.tsx
index 3545a1b4..d0220e8c 100644
--- a/lib/src/wrappers/ResponsiveWrapper.tsx
+++ b/lib/src/wrappers/ResponsiveWrapper.tsx
@@ -18,6 +18,12 @@ export interface ResponsiveWrapperProps
   desktopModeMediaQuery?: string;
 }

+/**
+ * useMediaQuery returns false if the matchMedia API isn't supported.
+ * However, we want to optimize for desktop first, not mobile.
+ */
+const supportMatchMedia = typeof window !== 'undefined' && typeof window.matchMedia !== 'undefined';
+
 export const makeResponsiveWrapper = (
   DesktopWrapperComponent: React.FC<DesktopWrapperProps | DesktopTooltipWrapperProps>,
   MobileWrapperComponent: React.FC<MobileWrapperProps>
@@ -36,7 +42,8 @@ export const makeResponsiveWrapper = (
     TransitionComponent,
     ...other
   }) => {
-    const isDesktop = useMediaQuery(desktopModeMediaQuery);
+    // eslint-disable-next-line react-hooks/rules-of-hooks
+    const isDesktop = supportMatchMedia ? useMediaQuery(desktopModeMediaQuery) : true;

     return isDesktop ? (
       <DesktopWrapperComponent

I think that it would also be great to mention the behavior of useMediaQuery in https://material-ui.com/components/use-media-query/#testing.
diff --git a/docs/src/pages/components/use-media-query/use-media-query.md b/docs/src/pages/components/use-media-query/use-media-query.md
index 5587217de..50d23fa16 100644
--- a/docs/src/pages/components/use-media-query/use-media-query.md
+++ b/docs/src/pages/components/use-media-query/use-media-query.md
@@ -63,6 +63,7 @@ You can use [json2mq](https://github.com/akiran/json2mq) to generate media query
 ## Testing

 You need an implementation of [matchMedia](https://developer.mozilla.org/en-US/docs/Web/API/Window/matchMedia) in your test environment.
+If not available, the hook will always return `false`.

 For instance, [jsdom doesn't support it yet](https://github.com/jsdom/jsdom/blob/master/test/web-platform-tests/to-upstream/html/browsers/the-window-object/window-properties-dont-upstream.html). You should polyfill it.
 Using [css-mediaquery](https://github.com/ericf/css-mediaquery) to emulate it is recommended.

To be honest, I don't like this approach. It still defaults to mobile since it tests for an isDesktop media query. I think defaulting to desktop would mean inverting all of the checks: Using mobileMediaQuery input into the ResponsiveWrapper component, making the default media query @media (pointer: coarse) there and also changing it in all other places.
But in the end, I don't mind that the default variant is mobile. It would just be nice if it was documented better on the website.
I think a good place would be to create testing page in the guides section. It could document the mobile behavior and also that you have to type one character at a time to the input fields in your tests.
Also, it could be clearer documented that the DatePicker, DateRangePicker etc. are responsive by default.
The way I use the website is that I go to the component demos and search for the use case I have. And then I see how it is implemented in the examples. This is great!
The problem is that on the component demo of the date range picker (and also date picker, time picker, etc.) it starts with "basic usage" and then it goes to "responsiveness". If you never used this library, it seems like responsiveness is something you need to configure, not the default.
So if you do not need the responsiveness, you would not look at the source code and see that the responsive DatePicker component is actually the regular DatePicker component. Maybe it would be good to get rid of the "basic usage" and just make the "responsiveness" the basic usage. And give a hint that jsdom does not support media queries by default. So the default on jsdom is mobile.
Or (and this might be controversial) you get rid of the DatePicker component all together and just provide MobileDatePicker, DesktopDatePicker and ResponsiveDatePicker. Then the developers using this library are forced to think about the implications of what they are using. This could of course be implemented in a way that there still is a DatePicker that just wraps ResponsiveDatePicker, but prints a warning in the console in dev mode or something like this. And then it can be removed in version 5.

@boldurean Thank you for sharing this piece of information! 🙏
How are you setting this dynamic locale?
Maybe it's resolved from the timezone and you could ensure test stability between environments by forcing a specific timezone for tests regardless of what machine they are run from.
We set TZ=UTC for Pickers tests:
https://github.com/mui/mui-x/blob/31511a0f115cbf3a88d875cc52d9a775080e589c/package.json#L39

@boldurean Thank you for sharing this piece of information! 🙏 How are you setting this dynamic locale? Maybe it's resolved from the timezone and you could ensure test stability between environments by forcing a specific timezone for tests regardless of what machine they are run from. We set TZ=UTC for Pickers tests: https://github.com/mui/mui-x/blob/31511a0f115cbf3a88d875cc52d9a775080e589c/package.json#L39

Yep. We're setting LC_ALL specific in tests script so it works for us


Error reports are dropped on the floor if the device doesn't have a network connection

To reproduce:

Turn off internet
Trigger a notification. note that there's an error sending the report in the log.
Quit app.
Re-enable internet
Relaunch the app. note that it says "0 reports sent"

Thank you for the report, @mikelikespie. I confirmed the issue and am looking into a fix.

:+1:


Feature Request: Update Django dependency

Type

[ ] General question or discussion
[ ] Propose a brand new feature
[x] Request modification of existing behavior or design

What is the problem that your feature request solves
Django 3.1 no longer works with the latest version of Python 3.12 because it uses distutils, which Python 3.12 removed. Django 3.1 hasn't been supported for over three years now. It's time to update the dependency.
It's unclear to me why ArchiveBox uses Django < 3.2 specifically and how much effort it would require to update, but I'm willing to contribute.
How badly do you want this new feature?
Personally, I'm fine using pyenv to run ArchiveBox using Python 3.11, but this will very quickly become an issue for many users of ArchiveBox.

[x] I'm willing to contribute dev time to fix this issue
[x] I like ArchiveBox so far / would recommend it to a friend

This is already done, dev is on 5.0.

This is already done, dev is on 5.0.

Shoot. I don't know why I didn't think to check... :sweat_smile:


Update "TodoList"

This is an offer! In the "To-do List" tab, the required amount is indicated for raising/improving a character, weapons, talents, etc. when adding something to the to-do list. It is also possible to change the values if you have collected the material. However, after you have changed the required amount of resources, but not to the end. The question arises, how much did you need to collect at all. For example, I collect a certain amount in one day, change the value on the site. And the next day I collected some materials, but I forgot how much I collected in the end to indicate it on the site, and in this regard there is an inconvenience.
One of the modern solutions is to remove a thing or character from the to-do list and return it, understanding how much is needed and how many resources have been collected.
As a result, my suggestion is that it would be convenient to see how much is required and how many resources have already been collected. If it is possible and does not require much effort, please do it. I will be very grateful)
Below is a screenshot of how I would like to see it

I am grateful for this version to summary all material to upgrade my characters,
I think maybe we should not add buttons on Summary block but each demand blocks and check each upgrade datum for example character level 50 upto 60/ability 667 to 668 or 668 to 667/weapon level up 0 to 20 for a button to update numbers in block and Summary block


Chapter 5 example URL requires access key

In CurrencyConverter.vue, retrieve currency rate from the following URL, but the site requires access key.
https://api.exchangeratesapi.io/latest
{
"success": false,
"error": {
"code": 101,
"type": "missing_access_key",
"info": "You have not supplied an API Access Key. [Required format: access_key=YOUR_ACCESS_KEY]"
}
}

you can access this link https://apilayer.com/marketplace/exchangerates_data-api#pricing and select free plan to generate a key

The free plan only provides an apikey. Don't know whether "apikey" and "access_key" are the same thing.
When try the following URL, the site returns error.
https://api.exchangeratesapi.io/latest?access_key=DRPO0QgXbXbWps6RR4bzINSNvTp9xMlB
{
"success": false,
"error": {
"code": 101,
"type": "invalid_access_key",
"info": "You have not supplied a valid API Access Key. [Technical Support<EMAIL_ADDRESS>}
}

according to their docs you need to pass the key via header, as described here https://apilayer.com/docs/article/getting-started.
You can also have a look in this pic that has a snippet:

according to their docs you need to pass the key via header, as described here https://apilayer.com/docs/article/getting-started.
You can also have a look in this pic that has a snippet:

In other words you cannot access the content via browser as you are doing, I would recommend using postman for that.

I tried to put the apikey into headers. It worked with thunder, a vs code plugin, similar to postman. But when use it inside ionic, like example 5, there was a network error. Doubt it is a CORS problem.

Can you post the error here?

Error is as below. Today it worked at first, then started throwing error again. Could be a timeout problem?
GET https://api.exchangeratesapi.io/latest?base=USD net::ERR_FAILED
caught (in promise) AxiosError {message: 'Network Error', name: 'AxiosError', code: 'ERR_NETWORK', config: {…}, request: XMLHttpRequest, …}

What does it say in the network tab? Is there an HTTP status there?

No status in network tab.

The issues tab says CORS error.


Address mapping question

Currently:

A Stanford person gets a complete address vcard from profiles.
Any person gets a country only vcard from each publication.

This means that a user may have multiple address vcards. Some of those may contain the same information; others may be conflicting (e.g., different countries).
What is the correct approach? Should a user have only one address or more than one address? If only one address, how do we decide which address to use?
refs #147

@justinlittman Can you add this to the agenda for the next arch. check-in?

Decision from 10/5 architecture meeting: Get rid of vcard / rest of address and record country as DC.spatial with geonames URI as object.


Provide a api to show the basic communication status

Hello, is it somehow possible to get information about the response status? Interesting would be e.g. the number of possible requests of a conversation or how many are left after each request. If a request does not work, the error that came back in response would also be interesting.

It needs to be evaluated, and I think it is a useful function for user to check their status. It may be a feather but needs time to be evaluated.

Ok :)


Make markdown optional for generating the PR and commit messages

Maintains current behavior where markdown is added by default
PRs continue using markdown and commit descriptions will not
Modify header formatting markdown for a more succinct syntax

Fixes #209 .

@allenh1 << Ptal

@allenh1 @tfoote << Ptal :)

@andre-rosa The request review at the top right is better for getting my attention as it provides a persistent notification to me until I've reviewed it instead of just a passing comment that can get lost among other notifications.

@andre-rosa The request review at the top right is better for getting my attention as it provides a persistent notification to me until I've reviewed it instead of just a passing comment that can get lost among other notifications.

@tfoote << Currently I can't edit that field from any of my pull requests. Guess it requires extra permissions?

@tfoote << Currently I can't edit that field from any of my pull requests. Guess it requires extra permissions?

I invited you to a team with triage permissions that I think will give you access to request reviews.


Resolver should handle aliases with absolute paths

The resolver should be able to handle aliases that reference absolute paths. For instance, given the following resolver config:
resolve: {
  root: '/srv/app',
  alias: {
    helpers: '/srv/helpers'
  }
}

and given the file, /srv/helpers/logger.js exists,
The statement, require('helpers/logger');, in a file at /srv/app/index.js should be transformed to require('../helpers/logger.js');.

Released fix in v3.1.0, thanks!

Thank you!


Integration stopped working

System Health details
N/A
Checklist

[X] I have enabled debug logging for my installation.
[X] I have filled out the issue template to the best of my ability.
[X] This issue only contains 1 issue (if you have multiple issues, open one issue for each issue).
[X] This issue is not a duplicate issue of any previous issues..

Describe the issue
Well, that lasted long, seems like AW have replaced their mobile app. I will see if that app is as easy to manipulate as the old one or if they have changed the protocols entirely.
In the meantime, perhaps good to tweet AW (@ AnglianWater)  for an official API?
Reproduction steps
N/A
Debug logs
Logger: homeassistant.config_entries
Source: config_entries.py:604
First occurred: 09:30:49 (1 occurrences)
Last logged: 09:30:49

Error setting up entry ....... for anglian_water
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 604, in async_setup
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/anglian_water/__init__.py", line 42, in async_setup_entry
    _api = await API.create_via_login_existing_device(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/pyanglianwater/api.py", line 121, in create_via_login_existing_device
    await self.refresh_login()
  File "/usr/local/lib/python3.12/site-packages/pyanglianwater/api.py", line 126, in refresh_login
    resp = await self.send_request(
           ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/pyanglianwater/api.py", line 181, in send_request
    resp_body = await _response.json()
                ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/aiohttp/client_reqrep.py", line 1194, in json
    raise ContentTypeError(
aiohttp.client_exceptions.ContentTypeError: 0, message='Attempt to decode JSON with unexpected mimetype: text/html', url=URL('https://myaccount.anglianwater.co.uk')

Diagnostics dump
No response

Ok, looks like they have moved over to use Azure B2C for auth, and pretty much just wrapped a website in the mobile app.


We should download and Centos immage by default.

It would be nice to have the template reach out and collect the image, that is needed to run the template.
The following can do this:
heat_template_version: 2014-10-16

description: A hot template for provisioning an Glance Image

parameters:

  image_name:
    type: string
    default: "Centos7"

  container_format:
    type: string
    default: "bare"
    constraints:
      - allowed_values: [ "ami", "ari", "aki", "bare", "ova", "ovf"]

  disk_format:
    type: string
    default: "qcow2"
    constraints:
      - allowed_values: [ "ami", "ari", "aki", "vhd", "vmdk", "raw", "qcow2", "vdi", "iso" ]

  location:
    type: string
    default: "http://cloud.centos.org/centos/7/images/CentOS-7-x86_64-GenericCloud.qcow2"

  public:
    type: boolean
    default: true

  protected:
    type: boolean
    default: false

  disk_min:
    type: integer
    default: 0

  ram_min:
    type: integer
    default: 0

resources:

  image:
    type: OS::Glance::Image
    properties:
      container_format: {get_param: container_format}
      disk_format: {get_param: disk_format}
      is_public: {get_param: public}
      location: {get_param: location}
      min_disk: {get_param: disk_min}
      min_ram: {get_param: ram_min}
      name: {get_param: image_name}
      protected: {get_param: protected}

outputs:
 image_name:
    description: Image Name
    value: { get_param: image_name}

However the trick is in finding a way to make this optional.

I think the process of downloading and registering the image in glance as an "out-of-scope" task which doesn't fit into these deployment templates. Image lifetime is different than stack lifetime - I want to download the image once and use it multiple times, not only for single stack creation. As you pointed out - this would have to be optional which I don't think can be easily done without adding even more complexity. Also this is usable for centos images only, other images may not be easily downloadable and have to be pre-prepared anyway.
Unless you have an objection I think we can close this RFE?

I really think that downloading or allowing a customer to specify where to get an image from, is not a large complexity.
All or most cloud images can be accessed from public endpoints (minus RHEL, for this you need to work on the portal needts t be done: https://bugzilla.redhat.com/show_bug.cgi?id=1126917)
However once a URL authentication mechanism is available glance or heat could pull and import with out the need do pre download. If you allow someone to specify the image location and its a file or a uri it would remove this as an optional step.

I'm a RHEL user.  It's just another failure vector for me.  It's another thing to setup, and out of scope.  Sorry.  If I would you, I'd run it as part of whatever you use to setup the deployment host to begin with.


defusedxml.lxml deprecation

Using wsgidav in pytest with python 3.11 raises this deprecation warning:
wsgidav/xml_tools.py:22
wsgidav/xml_tools.py:22: DeprecationWarning: defusedxml.lxml is no longer supported and will be removed in a future release.
    from defusedxml.lxml import _etree as etree

I use this version:
WsgiDAV/4.3.0 Python/3.11.6(64 bit) Linux-6.6.7-arch1-1-x86_64-with-glibc2.38
Python from: /home/eloi/.cache/pypoetry/virtualenvs/b3desk-XTy7QPnF-py3.11/bin/python

For the record, here is how I initiate my fixture:
@pytest.fixture(scope="session")
def webdav_server(tmp_path_factory):
    root_path = Path(tmp_path_factory.mktemp("webdav"))
    provider = FilesystemProvider(root_path, readonly=False, fs_opts={})

    config = {
        "host": "localhost",
        "port": portpicker.pick_unused_port(),
        "provider_mapping": {"/": provider},
        "http_authenticator": {"domain_controller": None},
        "simple_dc": {"user_mapping": {"*": True}},
        "verbose": 4,
        "logging": {
            "enable": True,
            "enable_loggers": [],
        },
    }
    app = WsgiDAVApp(config)

    server = wsgiref.simple_server.make_server("localhost", config["port"], app)

    server_thread = threading.Thread(target=server.serve_forever)
    server_thread.start()
    try:
        yield app
    finally:
        server.shutdown()
        server_thread.join()

See also https://github.com/tiran/defusedxml/issues/38,
https://github.com/tiran/defusedxml/commit/a252917a0740a624ca4078b4348b52da1e14f56a,
and https://github.com/ecederstrand/exchangelib/commit/ac2cb3dfd43051a9b74bd375d60d14524948c65c


installating plugins

Hi, was wondering if you are aware of any way to remotely configure plugins in intelliJ. We are looking for options to install & configure few plugins after intelliJ is installed via chef.
Eclipse has oomph which helps achieve this purpose.
For instance: want to install & configure SonarLint plugin on intelliJ and configure it to connect to a remote SonarQube server. Any pointers will help.

Hi, I asked a related question a while ago on SO: https://stackoverflow.com/questions/24044513/intellij-idea-install-plugins-from-command-line
You'll see the best workaround I was able to find as accepted answer.  It wasn't great, but back then it was working with the version of IntelliJ I was using.
I no longer use chef to setup my workstation so I haven't been maintaining this cookbook and haven't kept up with what's possible to do with IntelliJ.


Microsoft.Net.Sdk.Web missing Documents for Program.cs, Startup.cs, only lists generated cshtml

Using a Buildalyzer workspace to load a dotnet core solution and generate a Roslyn workspace, but the ASP.NET Core web project seems to only generate the cshtml/razor project and doesn't show the Documents or code in the main project.  As I understand it the ASP.NET Core and Razor compilation is a 2-phase build so it looks like I'm only seeing a project representing the 2nd phase build?
Am I missing something to get the Roslyn project for the first phase (with Program.cs, Startup.cs, whatever controllers, etc...)
I created a sample solution like this:
dotnet new classlib -n Example.Model
dotnet new angular -n Example.Web
dotnet new sln
dotnet sln add .\Example.Model
dotnet sln add .\Example.Web
dotnet add .\Example.Web reference .\Example.Model

Then my code for generating the workspace looks like this:
static async Task Main(string[] arguments)
{
    var solutionFile = new FileInfo(@"C:\code\misc\Example\Example.sln");
    Logger.LogInformation("Creating analyzer");
    var manager = new AnalyzerManager(solutionFile.FullName, new AnalyzerManagerOptions
    {
        LoggerFactory = LogFactory
    });

    Logger.LogInformation("Getting workspace");
    var ws = manager.GetWorkspace();
    Logger.LogInformation("Got workspace");

    var graph = ws.CurrentSolution.GetProjectDependencyGraph();
    foreach (var projectId in graph.GetTopologicallySortedProjects())
    {
        var wsp = ws.CurrentSolution.GetProject(projectId);
        var isWeb = IsWebProject(wsp.FilePath);
        Logger.LogInformation("{0} ({1}) - {2}", wsp.Name, isWeb, wsp.OutputFilePath);
        Logger.LogInformation("Documents: {0}", String.Join(", ", wsp.Documents.Select(d => d.Name).OrderBy(dn => dn)));
        var comp = await wsp.GetCompilationAsync();
        comp.Assembly.Accept(new SymbolDumper(LogFactory.CreateLogger(typeof(SymbolDumper))));
    }
}

And the resulting output looks like this (Note the Documents and types seen from the Example.Web project... it's missing Startup, Program, SampleDataController):
[11:42:48 INF] Creating analyzer
[11:42:48 INF] Getting workspace
[11:42:48 DBG]
Started process 24896: "dotnet" --info

[11:42:48 DBG]
Started process 6132: "dotnet" --info

[11:42:48 DBG] Process 6132 exited with code 0

[11:42:48 DBG] Process 24896 exited with code 0

[11:42:48 DBG]
Started process 15212: "dotnet" "C:\Program Files\dotnet\sdk\2.2.100-preview3-009430\MSBuild.dll" /noconsolelogger /target:Restore /property:ProvideCommandLineArgs="true";GenerateResourceMSBuildArchitecture="CurrentArchitecture";DesignTimeBuild="true";BuildProjectReferences="false";SkipCompilerExecution="true";DisableRarCache="true";AutoGenerateBindingRedirects="false";CopyBuildOutputToOutputDirectory="false";CopyOutputSymbolsToOutputDirectory="false";SkipCopyBuildProduct="true";AddModules="false";UseCommonOutputDirectory="true";GeneratePackageOnBuild="false";NonExistentFile="__NonExistentSubDir__\__NonExistentFile__";SolutionDir="C:\code\misc\Example" /l:BuildalyzerLogger,"C:\code\misc\RosTester\RosTester\bin\Debug\netcoreapp2.2\Buildalyzer.Logger.dll";1892;False "C:\code\misc\Example\Example.Model\Example.Model.csproj"

[11:42:48 DBG]
Started process 37852: "dotnet" "C:\Program Files\dotnet\sdk\2.2.100-preview3-009430\MSBuild.dll" /noconsolelogger /target:Restore /property:ProvideCommandLineArgs="true";GenerateResourceMSBuildArchitecture="CurrentArchitecture";DesignTimeBuild="true";BuildProjectReferences="false";SkipCompilerExecution="true";DisableRarCache="true";AutoGenerateBindingRedirects="false";CopyBuildOutputToOutputDirectory="false";CopyOutputSymbolsToOutputDirectory="false";SkipCopyBuildProduct="true";AddModules="false";UseCommonOutputDirectory="true";GeneratePackageOnBuild="false";NonExistentFile="__NonExistentSubDir__\__NonExistentFile__";SolutionDir="C:\code\misc\Example" /l:BuildalyzerLogger,"C:\code\misc\RosTester\RosTester\bin\Debug\netcoreapp2.2\Buildalyzer.Logger.dll";1976;False "C:\code\misc\Example\Example.Web\Example.Web.csproj"

[11:42:49 DBG] Process 15212 exited with code 0

[11:42:49 DBG]
Started process 31264: "dotnet" "C:\Program Files\dotnet\sdk\2.2.100-preview3-009430\MSBuild.dll" /noconsolelogger /target:Clean;Build /property:ProvideCommandLineArgs="true";GenerateResourceMSBuildArchitecture="CurrentArchitecture";DesignTimeBuild="true";BuildProjectReferences="false";SkipCompilerExecution="true";DisableRarCache="true";AutoGenerateBindingRedirects="false";CopyBuildOutputToOutputDirectory="false";CopyOutputSymbolsToOutputDirectory="false";SkipCopyBuildProduct="true";AddModules="false";UseCommonOutputDirectory="true";GeneratePackageOnBuild="false";NonExistentFile="__NonExistentSubDir__\__NonExistentFile__";SolutionDir="C:\code\misc\Example" /l:BuildalyzerLogger,"C:\code\misc\RosTester\RosTester\bin\Debug\netcoreapp2.2\Buildalyzer.Logger.dll";1876;False "C:\code\misc\Example\Example.Model\Example.Model.csproj"

[11:42:49 DBG] Process 37852 exited with code 0

[11:42:49 DBG]
Started process 26132: "dotnet" "C:\Program Files\dotnet\sdk\2.2.100-preview3-009430\MSBuild.dll" /noconsolelogger /target:Clean;Build /property:ProvideCommandLineArgs="true";GenerateResourceMSBuildArchitecture="CurrentArchitecture";DesignTimeBuild="true";BuildProjectReferences="false";SkipCompilerExecution="true";DisableRarCache="true";AutoGenerateBindingRedirects="false";CopyBuildOutputToOutputDirectory="false";CopyOutputSymbolsToOutputDirectory="false";SkipCopyBuildProduct="true";AddModules="false";UseCommonOutputDirectory="true";GeneratePackageOnBuild="false";NonExistentFile="__NonExistentSubDir__\__NonExistentFile__";SolutionDir="C:\code\misc\Example" /l:BuildalyzerLogger,"C:\code\misc\RosTester\RosTester\bin\Debug\netcoreapp2.2\Buildalyzer.Logger.dll";2056;False "C:\code\misc\Example\Example.Web\Example.Web.csproj"

[11:42:50 DBG] Process 31264 exited with code 0

[11:42:50 DBG] Process 26132 exited with code 0

[11:42:51 INF] Got workspace
[11:42:51 INF] Example.Model (False) - C:\code\misc\Example\Example.Model\bin\Debug\netstandard2.0\Example.Model.dll
[11:42:51 INF] Documents: .NETStandard,Version=v2.0.AssemblyAttributes.cs, Class1.cs, Example.Model.AssemblyInfo.cs
[11:42:51 INF] Assembly: Example.Model
[11:42:51 INF] Type: Class1
[11:42:51 INF] Example.Web (True) - C:\code\misc\Example\Example.Web\bin\Debug\netcoreapp2.2\Example.Web.dll
[11:42:51 INF] Documents: _ViewImports.g.cshtml.cs, Error.g.cshtml.cs, Example.Web.RazorTargetAssemblyInfo.cs
[11:42:51 INF] Assembly: Example.Web
[11:42:51 INF] Type: Pages__ViewImports
[11:42:51 INF] Type: Pages_Error

Such a coincidence, I was just about to fill the same issue. Please let me know if you find a way around it @jonstelly @daveaglick .

I just found the attached hack/workaround.  I'm not exactly clear what "the right" fix is here.  Running a dotnet build for my Example solution, I see two assemblies generated: Example.Web and Example.Web.Views
I don't know how those things should be modeled in Roslyn.  It seems like 1 project = 1 compilation in Roslyn, so I guess we should generate 2 projects from a single ASP.NET Core CSPROJ, one for the main assembly, and one for the View assembly?
I'm not sure if my hacky pull-request should be accepted but I submitted it anyway.  I think we could change the EventProcessor class to handle these two-phase builds and it probably wouldn't be a ton of work, but I'll wait for some guidance there from a contributor before I try anything else.

Thanks both 👍 - I know there are some open issues and PRs in here. Won't have time today for much OSS, but this is next up and I'll take a look at all of them as soon as I get the chance.

Well, I'll take your hack for now, @jonstelly . Thanks!

I wonder what other 2 (or more) pass builds there are... My only concern here is that other multi-phase builds might have the important stuff in the last (or intermediate) pass instead of the first. I'm okay merging this in since it at least fixes the problem we know about, but I wonder if one of these approaches would work better (or if they have problems of their own):

Should we combine the information from all the passes (removing duplicates)? I don't think so - took a look at the Csc arguments from both Razor passes and the second has a bunch of code generation artifacts from obj that we probably don't want to include (or do we?). How would we resolve conflicts (I.e., the CoreCompile Csc task has a TargetType of Exe while the one in RazorCoreCompile is Library)?
Should we try to always take the pass that's under the CoreCompile target? That way other passes that happen before CoreCompile can be ignored. Would need to make sure CoreCompile is always where the Csc task gets called from (I.e., UWP, Xamarin, etc.).
Should I consider generating two results as suggested? Maybe this would be the "correct" way - we already generally output a collection of AnalyzerResult for different targets, so maybe multiple Csc task invocations should each result in a new AnalyzerResult as well. That does make some sense given that the Csc command line arguments is kind of the whole point of running Buildalyzer and performing a design-time build. I wonder how callers would distinguish between each of the results, and AnalyzerResults is currently keyed by target framework - I'd either need to remove the keying or have it produce multiple AnalyzerResult objects for each target framework.

Leaning towards multiple AnalyzerResult for each Csc task, but I'm going to have to think on this a bit more.
For future reference, here's two passes in a Razor project:

On further reflection, I don't think I should return a result for every Csc task. There might be a variety of reasons why extra Csc tasks get involved, particularly when code generation comes into play. Instead, I think the right thing is to figure out which Csc is inside the CoreCompile target and prioritize that one, while using a different one if no CoreCompile was found. Updating the PR now and then I'll merge it with the additional CoreCompile logic.
Thanks!


Simple email feedback function

Closes #136

Commit history is a mess, so I'll squash. The overall diff is quite clear.


Help me please!

Hello, I was wondering how I would be able to detect what people say, and create commands like ">ban " that would output  to a variable, and it would trigger an if statement, such as banning the mentioned user.

uh. look at the docs? Do you know javascript?

I think you're better of by visiting these links first:
Learn Javascript:
https://www.codecademy.com/
https://developer.mozilla.org/en-US/docs/Web/JavaScript
Learn how to use Node.js:
https://nodejs.org/dist/latest-v5.x/docs/api/
Read Discord.js's docs & Examples:
http://discordjs.readthedocs.org/en/indev/docs_client.html
https://github.com/hydrabolt/discord.js/tree/master/examples
After you've got the basics down. You can then proceed to use this library to program a bot. Such issues as yours aren't a problem with the library, but your lack of knowledge on how to use it. Which the above links should help.


Failed building wheel

  Building wheel for gd.py (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for gd.py (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [46 lines of output]
      Traceback (most recent call last):
        File "/private/var/folders/9b/3qh71ljs1yb6j4qnbycsm3mh0000gn/T/pip-install-2nile6v_/gd-py_7d815601cea74f949ed06eed17202960/build.py", line 86, in <module>
          @entrypoint(__name__)
           ^^^^^^^^^^^^^^^^^^^^
        File "/private/var/folders/9b/3qh71ljs1yb6j4qnbycsm3mh0000gn/T/pip-build-env-kr1qgtl2/overlay/lib/python3.11/site-packages/entrypoint/core.py", line 41, in __call__
          return self.call(main)
                 ^^^^^^^^^^^^^^^
        File "/private/var/folders/9b/3qh71ljs1yb6j4qnbycsm3mh0000gn/T/pip-build-env-kr1qgtl2/overlay/lib/python3.11/site-packages/entrypoint/core.py", line 36, in call
          main()
        File "/private/var/folders/9b/3qh71ljs1yb6j4qnbycsm3mh0000gn/T/pip-install-2nile6v_/gd-py_7d815601cea74f949ed06eed17202960/build.py", line 88, in main
          build({})  # type: ignore
          ^^^^^^^^^
        File "/private/var/folders/9b/3qh71ljs1yb6j4qnbycsm3mh0000gn/T/pip-install-2nile6v_/gd-py_7d815601cea74f949ed06eed17202960/build.py", line 57, in build
          result = call(build_command(output_path))
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File<EMAIL_ADDRESS>line 389, in call
          with Popen(*popenargs, **kwargs) as p:
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File<EMAIL_ADDRESS>line 1024, in __init__
          self._execute_child(args, executable, preexec_fn, close_fds,
        File<EMAIL_ADDRESS>line 1917, in _execute_child
          raise child_exception_type(errno_num, err_msg, err_filename)
      FileNotFoundError: [Errno 2] No such file or directory: 'poetry'
      Traceback (most recent call last):
        File "/opt/homebrew/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
          main()
        File "/opt/homebrew/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/opt/homebrew/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 251, in build_wheel
          return _build_backend().build_wheel(wheel_directory, config_settings,
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/private/var/folders/9b/3qh71ljs1yb6j4qnbycsm3mh0000gn/T/pip-build-env-kr1qgtl2/overlay/lib/python3.11/site-packages/poetry/core/masonry/api.py", line 57, in build_wheel
          return WheelBuilder.make_in(
                 ^^^^^^^^^^^^^^^^^^^^^
        File "/private/var/folders/9b/3qh71ljs1yb6j4qnbycsm3mh0000gn/T/pip-build-env-kr1qgtl2/overlay/lib/python3.11/site-packages/poetry/core/masonry/builders/wheel.py", line 88, in make_in
          wb.build(target_dir=directory)
        File "/private/var/folders/9b/3qh71ljs1yb6j4qnbycsm3mh0000gn/T/pip-build-env-kr1qgtl2/overlay/lib/python3.11/site-packages/poetry/core/masonry/builders/wheel.py", line 123, in build
          self._build(zip_file)
        File "/private/var/folders/9b/3qh71ljs1yb6j4qnbycsm3mh0000gn/T/pip-build-env-kr1qgtl2/overlay/lib/python3.11/site-packages/poetry/core/masonry/builders/wheel.py", line 172, in _build
          self._run_build_script(self._package.build_script)
        File "/private/var/folders/9b/3qh71ljs1yb6j4qnbycsm3mh0000gn/T/pip-build-env-kr1qgtl2/overlay/lib/python3.11/site-packages/poetry/core/masonry/builders/wheel.py", line 232, in _run_build_script
          subprocess.check_call([self.executable.as_posix(), build_script])
        File<EMAIL_ADDRESS>line 413, in check_call
          raise CalledProcessError(retcode, cmd)
      subprocess.CalledProcessError: Command<EMAIL_ADDRESS>'build.py']' returned non-zero exit status 1.
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for gd.py
Successfully built gd-rpc
Failed to build gd.py
ERROR: Could not build wheels for gd.py, which is required to install pyproject.toml-based projects

gd.py was updated to remove poetry usage, so everything should work now.


HP

Vebinar

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 588d12d1-fdd1-892a-eb5e-9e2d86302368
Version Independent ID: 5eceac91-1d90-a663-2856-19e13da59351
Content: Remote Desktop clients
Content Source: WindowsServerDocs/remote/remote-desktop-services/clients/remote-desktop-clients.md
Service: unspecified
GitHub Login: @lizap
Microsoft Alias: elizapo

Hi - is there an issue here? I'm not sure what you mean by "vebinar"? Thanks!


Make ordering timestamp configurable when Workload evicted due to Pods-ready

What type of PR is this?
/kind feature
What this PR does / why we need it:
Allow admins to choose the timestamp used for sorting workloads after eviction due to wait-for-pods-ready. See KEP-1282.
Which issue(s) this PR fixes:
Fixes #1282
Special notes for your reviewer:
Does this PR introduce a user-facing change?

Add the config field .waitForPodsReady.requeuingTimestamp to allow admins configure the timestamp used when sorting workloads that were evicted due to their Pods not becoming ready in time.

PS: I still need to add the user-story test case.

/ok-to-test

/assign

/assign @mimowo

/assign @mimowo

ack

/kind api-change

I can think of an alternative approach in which we add a timestamp field in Workload.Info that is populated by the queue manager as the workloads are added or updated. Then the rest of the system can use this cached timestamp without having to understand where it's coming from.
It might simplify some code, but I'll leave it up to you to decide which approach to keep.

Ah, I missed you comment and implemented all of the other requested changes. I am looking at what you suggested now.

I can think of an alternative approach in which we add a timestamp field in Workload.Info that is populated by the queue manager as the workloads are added or updated. Then the rest of the system can use this cached timestamp without having to understand where it's coming from.
It might simplify some code, but I'll leave it up to you to decide which approach to keep.

Ah, I missed you comment and implemented all of the other requested changes. I am looking at what you suggested now.

While I think this would remove some of the configuration propagation that is occurring at the moment, it seems a bit unnatural to carry a global config value around in each instance of a Workload (via type Info). This value determines how multiple workloads get sorted against eachother. It might be a little confusing to pull this value from a given instance of a workload itself to then compare the rest of the workloads for sorting.

/approve
I'm leaving LGTM to @mimowo or @tenzen-y

Due to #1593
/test pull-kueue-test-e2e-main-1-28

LGTM

/release-note-edit
Add a config field to `.waitForPodsReady` to allow admins to configure the timestamp used when sorting workloads that were evicted due to their Pods not becoming ready in time.

/release-note-edit
Add a config field to `.waitForPodsReady` to allow admins to configure the timestamp used when sorting workloads that were evicted due to their Pods not becoming ready on time.

/release-note-edit
WaitForPodsReady: Add a config field to allow admins to configure the timestamp used when sorting workloads that were evicted due to their Pods not becoming ready on time.


Integrated terminal link/file hovering doesn't include :line:column in file:// links

When the file:// prefix is added to a file path, the line number and column number fields are not included when alt-clicking to open the file.

vs

This has been nagging at me forever- would love to see it fixed if it's relatively simple!
Is there any setting I can configure in the meantime to change what text is selected for these links?
Currently I'm stuck with either no position:

Or it highlights the whole thing, but when I click to navigate it omits file:/// and won't resolve unless I manually prepend a /:


Changes

add property to Osfstorage NodeSettings that sums the size of each every version with test.
minor frontend changes to make file size visible.

QA Notes
To observe these changes upload different files and different versions to the files tree. Reload the page. Their should be a number next to the OSF storage label that represents the storage usage of all files and all versions at that node. like the following:

Documentation
I'm unsure if this needs more context, it doesn't specify anything extra in the ticket.
Side Effects
This feature is waffled under flag 'storage_usage_feature'.
Ticket
https://openscience.atlassian.net/projects/PLAT/issues/PLAT-862

OK, discussed a bit more with Michael.
To address the performance issue, I suggest using Django's built-in caching framework to cache the result of the queries for some time (1 min?). For now, we can use the database backend: https://docs.djangoproject.com/en/1.11/topics/cache/#database-caching .
In the future, we could store the file version sizes in Elasticsearch (using django-elasticsearch-metrics). That would allow us to track storage usage over time, internally. But that doesn't need to happen before this feature is released.

Also, can you put this behind a waffle feature flag? I'm still concerned about how this will perform on prod. It would be great if we could do a phased rollout on prod. For example, we could enable it for team members with large projects (Brian N). Once we verify it's OK, then we'd enable it for everyone.

Looks like this just needs a merge migration (or "rebase", i.e. just remake the migration at the end).

Also, how difficult would it be to update the cache value when a file is added or removed? It looks like we already have a signal that gets triggered when the waterbutler callback happens:
@file_signals.file_updated.connect
def addon_delete_file_node(self, target, user, event_type, payload):

Ideally, the user should immediately see the correct value after adding or removing a file.

@sloria The difficulty in seeing the correct value immediately comes more from Fangorn then from the backend. When upload or delete a file you only get info about that file in the response. I'm not sure how we get addon info to fangorn.

The difficulty in seeing the correct value immediately comes more from Fangorn then from the backend. When upload or delete a file you only get info about that file in the response. I'm not sure how we get addon info to fangorn.

Why is it related to fangorn?
To clarify my suggestion: you should be able to update the cached storage value for a node when a file is added or removed. In pseudocode:
@file_signals.file_updated.connect
def addon_delete_file_node(self, target, user, event_type, payload):
   if event_type == 'file_added':
        get cached storage value for target
        increment the storage value by the size of the file
    elif event_type == 'file_deleted':
      get cached storage value for target
      decrement the storage value by the size of the file

Oh I thought you meant the user would see the value change immediately on upload/delete as a opposed to on refresh. We could the above to sync the cache size.

@sloria I have solution here which updates the cache more dynamically, however I'm not sure this is actually faster for most projects. We have to do some recursive querying for when folders are deleted. I can probably optimize this further, but if I'm unsure if it's worth it considering how much work we're doing to recover the size metadata.


Fix bugs with handling of the empty narrow

An empty narrow (ie, the home view) was being alternately represented in code
as both None and [].
Let's standardize on the None representation, removing the case (in
narrow_parameter) that sometimes led to [].
Additionally, I found and fixed two areas where we were incorrectly trying to
iterate over a narrow without first checking if it was None.

Automated message from Dropbox CLA bot
@jhurwitz, it looks like you've already signed the Dropbox CLA. Thanks!

Squashedand merged, thanks @jhurwitz!


A lot copyrighted content uploaded to TitleDB

Well this time they are actually working(some of them) and there is a lot of it, all of them injections.

Crash Bandicoot(Gba injection)
UniqueID CD0300
Dragon Ball Z Super Sonic Warriors(Gba injection)
UniqueID 45700
Moemon Emerald(Pokemon emerald rom hack  injection)
UniqueID 2DDE00
Pokemon Diamond(Pokemon R/S/E romhack injection)
UniqueID CC1700
Pokemon Life(Pokemon R/S/E Romhack injection)
UniqueID A08800
Seiken Densetsu 3 (NES injection)
UniqueID C0BF00
Terrfying 9/11 (idk about this one, couldnt install)
UniqueID C0A700
The Naked Little Mermaid ('_>' Lets just leave it at nes romhack, kill on sight)
UniqueID 694C00

I may have missed other injects so be sure to check.

Thanks, I've cleared these all out.

I missed this one, sorry

DBZ Team Training
UniqueID: A38800

It''s gone too now. Thanks again!

Crash Bandicoot THA/XS GBA injection was me, sorry ._.


[WIP] Add a higher level handling of flags

This is a work in progress on implementing #19. I am quite busy now so it may take a while to complete this I will ping when this is ready for review.

Codecov Report

Merging #20 into master will increase coverage by 0.38%.
The diff coverage is 97.54%.

@@            Coverage Diff             @@
##           master      #20      +/-   ##
==========================================
+ Coverage   92.94%   93.33%   +0.38%
==========================================
  Files          15       17       +2
  Lines        2382     2581     +199
==========================================
+ Hits         2214     2409     +195
- Misses        168      172       +4

Impacted Files
Coverage Δ

bytecode/bytecode.py
88.88% <100%> (+0.71%)
:white_check_mark:

bytecode/concrete.py
94.52% <100%> (+0.25%)
:white_check_mark:

bytecode/init.py
98.8% <100%> (+0.01%)
:white_check_mark:

bytecode/tests/test_flags.py
100% <100%> (ø)

bytecode/flags.py
96.45% <96.45%> (ø)

Continue to review full report at Codecov.

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

I still need to add some docs but a first review would be welcome @haypo.

IMHO once we agree on the Flags design, maybe bytecode API would be complete enough for a version 1.0? What do you thing?
By the way, TODO.rst seems oudated: "ConcreteBytecode.to_code(): compute the stack level, see byteplay and Python/compile.c?" this item is now implemented, no?
Flags and stack depth were the two remaining blocker point to stabilize the API.
I'm not sure that bytecode has enough users to stabilize the API, but maybe it would have more users with a stable API? :-)

This is superseded by #23, so closing


USB serial JTAG UART echo does not work without ESP_LOGI()

Answers checklist.

[X] I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
[X] I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
[X] I have searched the issue tracker for a similar issue and not found a similar issue.

IDF version.
v5.1.2
Espressif SoC revision.
ESP32-s3 v0.1
Operating System used.
macOS
How did you build your project?
Command line with idf.py
If you are using Windows, please specify command line type.
None
Development Kit.
Devkit-M
Power Supply used.
USB
What is the expected behavior?
I expected the USB JTAG serial UART to echo received characters back to the esp-idf monitor when using the following program, which is a slightly modified version of the esp-idf uart_echo example
/* UART Echo Example

   This example code is in the Public Domain (or CC0 licensed, at your option.)

   Unless required by applicable law or agreed to in writing, this
   software is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
   CONDITIONS OF ANY KIND, either express or implied.
*/
#include <stdio.h>
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "driver/uart.h"
#include "driver/gpio.h"
#include "sdkconfig.h"
#include "esp_log.h"

/**
 * This is an example which echos any data it receives on configured UART back to the sender,
 * with hardware flow control turned off. It does not use UART driver event queue.
 *
 * - Port: configured UART
 * - Receive (Rx) buffer: on
 * - Transmit (Tx) buffer: off
 * - Flow control: off
 * - Event queue: off
 * - Pin assignment: see defines below (See Kconfig)
 */

#define ECHO_TEST_TXD (CONFIG_EXAMPLE_UART_TXD)
#define ECHO_TEST_RXD (CONFIG_EXAMPLE_UART_RXD)
#define ECHO_TEST_RTS (UART_PIN_NO_CHANGE)
#define ECHO_TEST_CTS (UART_PIN_NO_CHANGE)

#define ECHO_UART_PORT_NUM      (CONFIG_EXAMPLE_UART_PORT_NUM)
#define ECHO_UART_BAUD_RATE     (CONFIG_EXAMPLE_UART_BAUD_RATE)
#define ECHO_TASK_STACK_SIZE    (CONFIG_EXAMPLE_TASK_STACK_SIZE)

static const char *TAG = "UART TEST";

#define BUF_SIZE (1024)

#if CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG

#include "driver/usb_serial_jtag.h"
#include "esp_vfs_usb_serial_jtag.h"
#include "esp_vfs_dev.h"
#include <fcntl.h>

#endif

static void echo_task(void *arg)
{

 // Configure UART

#if CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG
    usb_serial_jtag_driver_config_t usb_serial_jtag_config;
    usb_serial_jtag_config.rx_buffer_size = BUF_SIZE;
    usb_serial_jtag_config.tx_buffer_size = BUF_SIZE;
#else
    /* Configure parameters of an UART driver,
     * communication pins and install the driver */
    uart_config_t uart_config = {
        .baud_rate = ECHO_UART_BAUD_RATE,
        .data_bits = UART_DATA_8_BITS,
        .parity    = UART_PARITY_DISABLE,
        .stop_bits = UART_STOP_BITS_1,
        .flow_ctrl = UART_HW_FLOWCTRL_DISABLE,
        .source_clk = UART_SCLK_DEFAULT,
    };
    int intr_alloc_flags = 0;

#if CONFIG_UART_ISR_IN_IRAM
    intr_alloc_flags = ESP_INTR_FLAG_IRAM;
#endif

#endif

 // Install UART driver
#if CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG
    ESP_ERROR_CHECK(usb_serial_jtag_driver_install(&usb_serial_jtag_config));
#else
    ESP_ERROR_CHECK(uart_driver_install(ECHO_UART_PORT_NUM, BUF_SIZE * 2, 0, 0, NULL, intr_alloc_flags));
    ESP_ERROR_CHECK(uart_param_config(ECHO_UART_PORT_NUM, &uart_config));
    ESP_ERROR_CHECK(uart_set_pin(ECHO_UART_PORT_NUM, ECHO_TEST_TXD, ECHO_TEST_RXD, ECHO_TEST_RTS, ECHO_TEST_CTS));
#endif

    // Configure a temporary buffer for the incoming data
    uint8_t *data = (uint8_t *) malloc(BUF_SIZE);

    while (1) {

        // Read data from the UART
#if CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG
        int len = usb_serial_jtag_read_bytes( data, (BUF_SIZE - 1), 20 / portTICK_PERIOD_MS);
#else
        int len = uart_read_bytes(ECHO_UART_PORT_NUM, data, (BUF_SIZE - 1), 20 / portTICK_PERIOD_MS);
#endif

        // Write data back to the UART
        if (len) {
#if CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG
        usb_serial_jtag_write_bytes((const char *) data, len, 20 / portTICK_PERIOD_MS);
#else
        uart_write_bytes(ECHO_UART_PORT_NUM, (const char *) data, len);
#endif
            data[len] = '\0';
            // ESP_LOGI(TAG, "Recv str: %s", (char *) data);
        }
    }
}

void app_main(void)
{
    xTaskCreate(echo_task, "uart_echo_task", ECHO_TASK_STACK_SIZE, NULL, 10, NULL);
}

What is the actual behavior?
Instead it only works when the line
// ESP_LOGI(TAG, "Recv str: %s", (char *) data);
is uncommented.
If  idf.py menuconfig is used to select UART0, the echo works correctly, even with this line commented
Steps to reproduce.

Replace the existing uart echo example code with the code given above, and configure the project with menuconfig for an esp32-s3 and UART0
Build the project with idf.py build flash monitor and confirm that characters are echoed back when the usb cable is plugged into the UART port
Reconfigure the project with CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG using menuconfig and plug the usb cable into the USB port, and observe that no characters are echoed
Rebuild with line 108 ( // ESP_LOGI(TAG, "Recv str: %s", (char *) data);
)  uncommented and observe that characters are now echoed

Debug Logs.
No response
More Information.
Note that adding
usb_serial_jtag_ll_txfifo_flush();
after
usb_serial_jtag_write_bytes((const char *) data, len, 20 / portTICK_PERIOD_MS);
seems to fix the issue but this requires the inclusion of  hal/usb_serial_jtag_ll.h
which is not documented

Probably very similar issue as https://github.com/espressif/esp-idf/issues/12620#issuecomment-1817448578 — you are  trying to use the USB_SERIAL_JTAG peripheral simultaneously via the driver functions (usb_serial_jtag_*) and via the higher-level console driver. It is unlikely that this combination will work.
If you need to use the USB_SERIAL_JTAG driver directly, don't enable CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG_ENABLED.
If you enable console via USB_SERIAL_JTAG, don't try to use the lower-level driver and use write or fwrite functions to write bytes to stdout. If you use fwrite, call fflush when you want to flush the stream buffer. In both cases, call fsync(fileno(stdout)) to force the underlying driver to send the data.


Cleanup more resources on test startup

Description
Cleans up k8s services, deployments, mutating webhook configurations, secrets on test startup.
Motivation and Context
Issue #1024
How Has This Been Tested?

[ ] Covered by existing integration testing
[ ] Added integration testing to cover
[x] Tested locally
[ ] Have not tested

Types of changes

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

Checklist:

[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.

I'm ok for extra cleanups, @nickolaev your final decision. Thanks.


Add dictionary definition for 'Aesthetic'

This PR fixes...
The lack of dictionary definition and perspective for 'Aesthetic'
What I did...
-Add dictionary definition for aesthetic
-Add dictionary perspective for aesthetic
How to test...
In a list format, tell us how to test this PR.
Ex:

Navigate to /dictionary
Search "Aesthetic"
See definition and perspective show up under term "aesthetic"
check grammar and types

I learned...
As a beginner I learned how to contribute to open source repository.

can someone please tell me what got wrong ? why it is'nt acceptable?

Closing, as I've just merged in your previous PR for the same term, #179


Fast shuffle

This PR adds shuffle implementation using custom cupy kernel named cupy_permutation.
The proposed implementation is faster than current implementation using argsort when array size <= 32M as shown below. The argsort approach is selected when array size > 32M with this PR, because it is faster at that range of size.

jenkins test this please

Thank you for the fixes!
I think it's much easier to understand now.

I'm sorry for being late to reply.
I don't have a particular method in mind to test distribution for now, but I want to merge this PR anyway, as implementation looks fine.
Could you write a brief comment to describe the current test, and also a TODO comment to improve it?
I'm going to merge after that.

Thank you for your comment, @niboshi
I've added a brief comment on current randomness test. Please check.

jenkins, test this please

Ah, I found an error.
Could you move the definition of _cupy_permutation() function to below that of gumbel() and randint()?

Also, currently we do not depend on scipy in unit tests.
Could you implement comb by yourself?

Thank you for your comment, @niboshi
I did not notice that the place of _cupy_permustaion was not appropriate. Also wrote simple _comb.

Thank you for the fix!
jenkins, test this please

jenkins, test this please

jenkins, test this please

Jenkins test this please

LGTM!


Adaptative text size ?

As you can see long names are ruining it, I do like that module a lot tho ! Good work !

Yes, this issue is a small headache of mine, haha. 😅
I definately plan on revisiting this to improve on how it handles long texts.

I didn't actually conciously adress this issue. But as of version <IP_ADDRESS> (I think, it's definately there in 0.9.4 at least), this has been fixed! The banner will dynamically expand:
When the text isn't too long the image will lay overtop of the banner

When the text gets longer, the image will slide further inside as the banner gets larger, which I think is perfectly reasonable 😄

-->

Haha nice ! Thanks you champ ! Hope to see more module from your master brain !


Tracks to napari function in HDF5FileHandler

[x] Fixed the coords axes order in utils by adding an optional argument coords_axes if needed.
[x] Added the napari tracks export fn to the HDF5FileHandler as an attribute.

@quantumjot ready for review! 👍

I've fixed the pre-commit checks

Codecov Report

Merging #118 (b168df8) into main (05c4abe) will decrease coverage by 3.40%.
The diff coverage is 77.77%.

@@            Coverage Diff             @@
##             main     #118      +/-   ##
==========================================
- Coverage   84.54%   81.14%   -3.41%
==========================================
  Files          14       14
  Lines        1475     1490      +15
==========================================
- Hits         1247     1209      -38
- Misses        228      281      +53

Impacted Files
Coverage Δ

btrack/dataio.py
64.36% <60.00%> (-14.71%)
:arrow_down:

btrack/utils.py
89.42% <100.00%> (+1.12%)
:arrow_up:

btrack/btypes.py
76.26% <0.00%> (-0.39%)
:arrow_down:

Continue to review full report at Codecov.

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

Am closing this as it is outdated.


Using the same struct with DateTime for Firestore<->Backend<->Frontend communication

Is there a way to use the same struct for both Backend<->Frontend and Backend<->Firestore communication?
For the Backend<->Firestore we need DateTime to FirestoreTimestamp conversion.
For the Backend<->Frontend we need u64 to DateTime conversion.
This is my current way of solving this:

#[derive(Serialize, Deserialize, Default)]
#[serde(rename_all = "camelCase")]
pub struct FooFirestore {
    pub some_time: Option<FirestoreTimestamp>,
}

#[derive(Serialize, Deserialize, Default, TypeScriptify)]
#[serde(rename_all = "camelCase")]
pub struct FooJson {
    #[serde(with = "chrono::serde::ts_seconds_option")]
    #[ts(ts_as = "Option<i64>")]
    pub some_time: Option<DateTime<Utc>>,
}

impl From<FooFirestore> for FooJson {
    fn from(value: FooFirestore) -> Self {
        Self {
            some_time: value.some_time.map(|t| t.0),
        }
    }
}

impl From<FooJson> for FooFirestore {
    fn from(value: FooJson) -> Self {
        Self {
            some_time: value.some_time.map(|t| t.into()),
        }
    }
}

This is a bit verbose, especially if I have more properties. Every property is quadrupled in code.

Hey, thanks! It's not the most efficient solution but it works for me.


Integration test readme update

Updates the readme to mention running the tests using golem.
Also provides instructions for making test development easier.

Current coverage is 51.20%

Merging #1623 into master will decrease coverage by -6.70% as of 08f563b

@@            master   #1623   diff @@
======================================
  Files          122     122
  Stmts        10683   10663    -20
  Branches       840     747    -93
  Methods          0       0
======================================
- Hit           6186    5460   -726
+ Partial        840     747    -93
- Missed        3657    4456   +799

Review entire Coverage Diff as of 08f563b

Uncovered Suggestions

+0.30% via .../driver/s3-aws/s3.go#730...761
+0.28% via .../driver/s3-aws/s3.go#266...295
+0.22% via .../driver/s3-aws/s3.go#882...904
See 7 more...

Powered by Codecov. Updated on successful CI builds.

LGTM (nits aside)


Clarify maxPods setting and impact.

This PR introduced an unfortunate misunderstanding of the maxPods(https://docs.microsoft.com/en-us/rest/api/aks/agentpools/get#agentpool) setting.
This limitation is tied to the concepts described here

@MikkelHegn : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@laurenhughes

Thanks, @MikkelHegn!
#sign-off

@laurenhughes: I'm sorry - only the author of this article, @mlearned, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.

@ktoliver : Thanks for your contribution! The author(s) have been notified to review your proposed change.


Migrondi: command not found

Hi,
I installed Migrondi using the command dotnet tool install --global Migrondi on Windows and Ubuntu 18.04. However, on Ubuntu it show the message: command not found. If I try to install again I receive the message: Tool 'migrondi' is already installed.. What could be?
dotnet SDKs:

3.1.407
5.0.201

Interesting hmm I have no idea what can be happening there while this SO Q&A is not 100% your case I suggest you to look at it particularly these steps

Does the tool exist under ~/.dotnet/tools?
Have you tried restarting the command prompt to force refresh your $PATH?

also I'd also ask you

is your ~/.dotnet/tools in your $PATH?
how did you install dotnet; via the snap or the deb package?

if none of those seem to work I'd like you to try installing it as a local tool
dotnet new tool-manifest
dotnet tool install Migrondi
dotnet migrondi --help

Does the tool exist under ~/.dotnet/tools?

Yes

how did you install dotnet; via the snap or the deb package?

Deb package, following these steps here from Microsoft website.

if none of those seem to work I'd like you to try installing it as a local tool

Now, it is executing. However, when I apply the up command to create a new table: Migrations Applied: 0
Using Windows it is working very well.

Does the tool exist under ~/.dotnet/tools?

Yes

does that directory is in the $PATH env variable?
sorry it's taking long I was just trying to get an ubuntu environment to try to replicate it I'll try to get back if I find something in the following days

hey @jacksonpradolima did you have a chance to check if this one  is still happening?

I had finally setup my Raspberry Pi 4 with Ubuntu server and I did find some issues with SQLite I'll reserve some time next week to check it out
Unable to load shared library 'SQLite.Interop.dll' or one of its dependencies. In order to help diagnose loading problems, consider setting the LD_DEBUG environment variable: libSQLite.Interop.dll: cannot open shared object file: No such file or directory

so this might need a little bit more of exploration, not sure if it's due to the arm arch though

So... using WSL2 Ubuntu everything seems to work just fine
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 20.04.2 LTS
Release:        20.04
Codename:       focal

So the Raspberry Pi Issue can be ruled out, also it doesn't seem to reproduce your initial error
I'll wait for your feedback

Hi @AngelMunoz
We finished the project, and we are using Windows. Unfortunately, I can't give you good feedback.
We can close this issue.


训练代码  在加载SD的Unet的权重时会报错

我发现 UNet2DConditionModel的state_dict().keys() 和 SD的Unet的state_dict.keys()不匹配导致报错

Some weights of UNet2DConditionModel were not initialized from the model checkpoint at preset/models/stable-diffusion-2-base and are newly initialized

Hello, I met the same problem. How to solve it?

Sorry, I can't solve it either, waiting for the author's reply
At 2024-04-17 11:14:44, "xsqhust" @.***> wrote:
Hello, I met the same problem. How to solve it?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

Add 'low_cpu_mem_usage=False'. It works for me.

Add 'low_cpu_mem_usage=False'. It works for me.

Hi, where do I need to add this code?

Add 'low_cpu_mem_usage=False'. It works for me.

Thanks! it is also works for me

Add 'low_cpu_mem_usage=False'. It works for me.

This indeed does not cause an error, but some of the weights in the UNet2DConditionModel are not initialized by the weights of SD's UNet. Is this correct?

Add 'low_cpu_mem_usage=False'. It works for me.

This indeed does not cause an error, but some of the weights in the UNet2DConditionModel are not initialized by the weights of SD's UNet. Is this correct?

Yes.

what's the right way to solve the problem?

请问楼主解决了吗，我也遇到了同样的问题

Sorry, I can't solve it either, waiting for the author's reply At 2024-04-17 11:14:44, "xsqhust" @.> wrote: Hello, I met the same problem. How to solve it? — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.>

似乎这些参数本来就不用加载？这些是新引入且参与训练的参数，不知道我理解的对不对

I encountered the same error, I will paste the exception information I encountered in full here. I hope it will be helpful to those who come after.
12/20/2024 16:01:59 - INFO - __main__ - Distributed environment: NO
Num processes: 1
Process index: 0
Local process index: 0
Device: cuda

Mixed precision type: fp16

You are using a model of type clip_text_model to instantiate a model of type . This is not supported for all configurations of models and can yield errors.
{'prediction_type', 'variance_type', 'timestep_spacing', 'thresholding', 'dynamic_thresholding_ratio', 'sample_max_value', 'clip_sample_range'} was not found in config. Values will be initialized to default values.
{'force_upcast', 'scaling_factor'} was not found in config. Values will be initialized to default values.
12/20/2024 16:02:04 - INFO - __main__ - Loading unet weights from SD
{'mid_block_type', 'time_embedding_dim', 'num_class_embeds', 'encoder_hid_dim_type', 'conv_in_kernel', 'timestep_post_act', 'attention_type', 'num_attention_heads', 'time_embedding_act_fn', 'time_embedding_type', 'class_embeddings_concat', 'upcast_attention', 'cross_attention_norm', 'conv_out_kernel', 'resnet_time_scale_shift', 'encoder_hid_dim', 'addition_embed_type', 'resnet_out_scale_factor', 'class_embed_type', 'mid_block_only_cross_attention', 'projection_class_embeddings_input_dim', 'only_cross_attention', 'addition_time_embed_dim', 'addition_embed_type_num_heads', 'resnet_skip_time_act', 'time_cond_proj_dim', 'transformer_layers_per_block'} was not found in config. Values will be initialized to default values.
Traceback (most recent call last):
…………
Please make sure to pass `low_cpu_mem_usage=False` and `device_map=None` if you want to randomly initialize those weights or else make sure your checkpoint file is correct.


[SMALLFIX] Use static imports for test utilities

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/3379/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/3381/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/3382/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/3386/
Test FAILed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/3385/
Test PASSed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/3387/
Test FAILed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/3388/
Test PASSed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/3396/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/3398/
Test FAILed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/3400/
Test PASSed.

alluxio-bot, merge this please


Having many tabs means that some of them (on the right) will disappear

Environment
Windows build number: Microsoft Windows [Version 10.0.18362.356]
Windows Terminal version (if applicable): Windows Terminal (Preview) Version: 0.4.2382.0

Steps to reproduce

Open many terminal tabs -or- a small number with long titles
Note that at some point, depending on the width of the screen, new tabs do not appear on the tab bar at the top.
The tab is there, and you can Ctrl+Tab -or- Ctrl+Shift+Tab to cycle the tabs.

Expected behavior

Current tab is always shown when on that tab.
Tab bar can scroll left or right to make the current tab show in the tab bar.
Current tab shows as much of title bar from left to right as possible, still allowing other tabs to have enough space to be clickable.
Cycling through tabs does not show hidden tabs even when landing on one of the hidden tabs.
Would really like to have the option as in VS Code to not have and X to close, but instead right-click Close menus item. This will be important as you apply making items smaller that are not the current tab-item, as it will be easy to click the close box by accident. Or, you can make the close box X only visible for the currently highlighted tab, but this seems overly complicated.
If there are too many items in the list, the last item should be ..., and clicking it should list all the tabs in order.
Tabs should be able to be moved to a different position in the list.
Hovering over a tab that has been shortened due to screen real estate should show a popup indicating the full title. (Bonus points for showing other information about the tab (date it was opened, how long the session has been opened, what type of prompt it is such as PowerShell, CMD, Linux, etc.)

Actual behavior

If you Ctrl+Tab to a tab that is not in the list at the top, the tab is still not shown. There is no way to verify which tab you are on, except based on what was in the window as you left it.
The current tab is not highlighted to indicate which tab is the current tab.
The tab bar shows a static list of the first few items, each at their full width until space runs out.
All tabs are shown at full width, even though they are not the currently selected tab.
There is no UI for accessing the full list of all open terminals.
There is no way to scroll through the list of tabs. Usually down with < and > buttons appearing when the list becomes to big to display fully in the tab bar.

Hey, thanks for the in-depth analysis here! This is largely a duplicate of /dup #857, and will be fixed by #1896.


Make hset support multiple field/value pairs.

Pull Request check-list
Please make sure to review and check all of these items:

[x] Does $ tox pass with this change (including linting)?
[x] Does travis tests pass with this change (enable it first in your forked repo and wait for the travis build to finish)?
[x] Is the new or changed code fully tested?
[x] Is a documentation update included (if this change modifies existing APIs, or introduces new ones)?

NOTE: these things are not required to open a PR and can be done
afterwards / while the PR is open.
Description of change

hset accept multiple field/value s now.
hmset marked as deprecated.

close https://github.com/andymccurdy/redis-py/issues/1269

ping @andymccurdy

Thanks, looks great!

I have a learning question.
When would we consider to break backwards compatibility in favor of this:
hset(self, name, mapping)

We could consider a backwards incompatible change when we increment a major version number. For example, 3.x -> 4.x.


Value is not allowed for field 'status'

Hi,
I'm having problems using the agent, could you guys help me?
This message is appearing after i finish my execution
{
  errorCode: 4001,
  message: "Incorrect Request. [Value is not allowed for field 'status'.] "
}
{
  errorCode: 4001,
  message: "Incorrect Request. [Value is not allowed for field 'status'.] "
}

I'm using jest, everything is being sent correctly to report portal but the suit execution doesn't stop automatically

@anastasiyamazheika there is was an option with transfering issue)
Could you please share more details about the issue you are facing? Logs and agent configuration details will help us to understand the defect.

@AmsterGet, no worries.
So I just started reporting to Report Portal that's used on our side and send results to it. Results appear but I'm not sure why do I get these errors.
We use build: 5.6.0.
Part of playwright config:
const RPconfig = {
  token: "token",
  endpoint: "endpoint",
  project: "project",
  launch: "Regression",
  attributes: [
    {
      key: "agent",
      value: "playwright"
    }
  ],
  description: "Regression"
};

const config = {
  reporter: [
    ["line"],
    ["@reportportal/agent-js-playwright", RPconfig],
    ["html", { open: "never" }]
  ],
  projects: [
    {
      name: "Chrome Stable",
      use: {
        browserName: "chromium",
        channel: "chrome",
        baseURL: "http://localhost:8080",
        screenshot: "only-on-failure",
        video: "retain-on-failure",
        trace: "retain-on-failure",
        ignoreHTTPSErrors: true,
        launchOptions: {
          args: ["-–allow-file-access-from-files"]
        }
      },
      timeout: 60000
    }
  ]
};

module.exports = config;

At the end of tests execution I see:
Error: Request failed with status code 400: {"errorCode":4001,"message":"Incorrect Request. [Value is not allowed for field 'status'.] "}
    at /node_modules/@reportportal/client-javascript/lib/rest.js:37:15
    at processTicksAndRejections (internal/process/task_queues.js:95:5)
Failed to finish test. Error: Request failed with status code 400: {"errorCode":4001,"message":"Incorrect Request. [Value is not allowed for field 'status'.] "}
    at /node_modules/@reportportal/client-javascript/lib/rest.js:37:15
    at processTicksAndRejections (internal/process/task_queues.js:95:5)
Error: Request failed with status code 400: {"errorCode":4001,"message":"Incorrect Request. [Value is not allowed for field 'status'.] "}
    at /node_modules/@reportportal/client-javascript/lib/rest.js:37:15
    at processTicksAndRejections (internal/process/task_queues.js:95:5)
Failed to finish test. Error: Request failed with status code 400: {"errorCode":4001,"message":"Incorrect Request. [Value is not allowed for field 'status'.] "}
    at /node_modules/@reportportal/client-javascript/lib/rest.js:37:15
    at processTicksAndRejections (internal/process/task_queues.js:95:5)

@anastasiyamazheika Thank you for the fast response.
Did you set the status manually via the Reporting API? If not, I'm guessing the problem is caused by a bug in mapping the timedOut playwright status to RP statuses. Did you get a timeout error during a test run?

@AmsterGet

Did you set the status manually via the ReportingAPI?
Nope. I don't set anything manually right now :)

Did you get a timeout error during a test run?
Nope, there're some tests that just fail because of logic inside.

Hello @anastasiyamazheika !
We've recently released a new 5.0.2 version with a bugfix.
Could you try and give us feedback on this issue?

Hello @AmsterGet, great! Thanks a lot! I'm not sure that it will be really soon as our instance is used across the whole company but I will let you know! :)
Thanks for fixing it!

Hello @anastasiyamazheika !
Is it works with the 5.0.2+? Can we close this issue?

I'll close the issue since fixes have been released.
Feel free to reopen it if the issue still exists.


Revendor github.com/Microsoft/hcsshim

Signed-off-by: Justin Terry (VM<EMAIL_ADDRESS>

Codecov Report

Merging #2718 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #2718   +/-   ##
=======================================
  Coverage   43.54%   43.54%
=======================================
  Files         101      101
  Lines       10734    10734
=======================================
  Hits         4674     4674
  Misses       5326     5326
  Partials      734      734

Flag
Coverage Δ

#linux
47.2% <ø> (-0.03%)
:arrow_down:

#windows
40.67% <ø> (ø)
:arrow_up:

Continue to review full report at Codecov.

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

LGTM

LGTM


Global Events does not work. App Events are glitchy.

Good afternoon! While using this library, two problems arose:

If you place the code to activate Global Events in a separate class (in a method) and then call it in the main form (FormName_Load) - then Global Events stops working (nothing happens).
1.1) If you use the code to activate Global Events in the main form (FormName_Load), without wrappers - everything works.
1.2) The code to activate App Events works anyway.

App Events start working strangely if you create 2 or more forms and put, in each separately, a key combination, (for example: to change the color of the form). Then run 2 forms (using Form2.Show() from Form1) and press key combinations - the color changes, simultaneously, in both forms. After several keystrokes, the key combination stops working in the first form (the second continues to change color).

...


backport: DNM: tox: add ansible2.3

Not sure if this is the right way to add this... But I really want us to be testing on both ansible2.2 and ansible2.3.

I think this means I need to add Jenkins jobs for ansible2.3 as well? (And they'll fail on stable-2.2 until I've backported this?)

I think this means I need to add Jenkins jobs for ansible2.3 as well? (And they'll fail on stable-2.2 until I've backported this?)

Yeah, you'll need to update https://github.com/ceph/ceph-build/blob/master/ceph-ansible-prs/config/definitions/ceph-ansible-prs.yml#L6. Perhaps it's time to add an ansible_version factor in that JJB so we can add ansible2.2 and ansible2.3 easily.

Thanks. I will merge+backport this PR before making the ceph-build.git change.

jenkins test kraken-ansible2.2-xenial_cluster

@ktdreyer status of this PR?

This is uneeded now


Breadcrumbs and the Ballerina Button are not Working in API Docs

Description:
Breadcrumbs and the Ballerina button are not working in API Docs as shown below.

Steps to reproduce:
Affected Versions:
OS, DB, other environment details and versions:
Related Issues (optional):

Suggested Labels (optional):

Suggested Assignees (optional):

This is fixed in [1] now.
[1] https://ballerina.io/swan-lake/learn/api-docs/ballerina/index.html#/http


Support binary (hex) values

It would be nice to support specification of arbitrary binary (hex) values, particularly for octetString attributes. Syntax should look like:
<pairs-of-hex-digits>

For example, a string of bytes from 0 to 7 would look like:
<0001020304050607>

For readability, whitespace should be allowed between pairs, e.g.:
<000102030405060708090a0b0c0d0e0f
<PHONE_NUMBER>15161718191a1b1c1d1e1f
...
 f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff>

Can this value type be listed with other values, or must it be the only value token? Like for instance what should the parser do if the file has a value that is a mixture of a string and a hex token
ATTR name job-name "Hybrid Job Name - "<4950502045766572797768657265e284a2>

Would it parse that to produce the string value "Hybrid Job Name - IPP Everywhere™" ?