pin pypi version in .travis.yml

Coverage remained the same at 100.0% when pulling acea865134362c144529fbcb779f9b1d58a69f78 on pypi into 48a2d8e115e73d42f4edfb6d6d168b5586620c54 on master.


Cosmetics fixes of backtick in HTTP2 pages and added me as contributor.

Cosmetics fixes for better readability of back-tick in HTTP2 pages (en, es, id, ja, ko, pt-br, zh-cn) and add me as contributor.

Thank you for your help. Ping me when you're done so I can merge.
Joe Medley | Technical Writer, Chrome DevRel |<EMAIL_ADDRESS>|
816-678-7195
If an API's not documented it doesn't exist.
On Thu, Jul 13, 2017 at 10:18 AM, Luca Berton<EMAIL_ADDRESS>wrote:

@lucab85 commented on this pull request.
In src/content/en/fundamentals/performance/http2/index.md
https://github.com/google/WebFundamentals/pull/4828#discussion_r127167499
:

@@ -254,7 +254,7 @@ reassemble them on the other end.

The snapshot captures multiple streams in flight within the same connection. The
-client is transmitting a DATA frame (stream 5) to the server, while the server
+client is transmitting a DATA frame (stream 5) to the server, while the server
I've re-read the paragraph and I was wrong. I'll corrent and commit again.
Thank you for your feedback.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/google/WebFundamentals/pull/4828#discussion_r127167499,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AH0vi4Uz8vdCMO7LR4DtUtgrb4cOWM9zks5sNeD9gaJpZM4OVUBt
.


Infinite loop causes ADS to hang

Azure Data Studio Version:
Version: 1.5.2 (system setup)
Commit: f74080c96310354bc92211f1826c0fdce78ca2f6
Date: 2019-03-22T06:25:26.627Z
VS Code 1.30.1
Electron: 2.0.12
Chrome: 61.0.3163.100
Node.js: 8.9.3
V8: 6.1.534.41
OS: Windows_NT x64 10.0.17763

Steps to Reproduce:

Running the following query (or actually any query that has an infinite loop) causes ADS to freeze, making it unresponsive, even to close. (has to be closed on task manager)

DECLARE @i BIGINT = 0
WHILE @i < 10
BEGIN
    PRINT 'a'
END

At the first time, I left it running because I had already pressed the stop button, but it run for 2 minutes, before I forced the termination via task manager. The process was already using 4GB of RAM

Does the entire UI become unresponsive? (Clicking things does give a visual response) or does the application become functionality unresponsive?

It's kind of both. it becomes unresponsive, but if I for example try to double click to select text, after some time the text is selected. But even so, doing CTRL+C does not copy the content. Plus, the application become functionality unresponsive because I can't even stop the query.
Pinging @vickyharp as she was also able to reproduce it, she might have aditional info

I have a fix for this but its a pretty large change and will require additional changes in the sqltoolsservice to completely fix. @kburtram I think we should push this to the next release to give the fix time to age before we release it.

Don't know if anything was done regarding this, but now when it has an infinite loop, the app becomes unresponsive for a while, before prompting a box saying that it's unresponsive and if I would like to restart the window. It seems to mitigate the issue at least

Tested in latest insiders build, cancelling an infinite loop query is able to terminate Query Editor execution, it may take few seconds to finish reading results, but will eventually stop execution with below message:
Started executing query at Line 1
a
...
Query was canceled by user
Total execution time: 00:00:02.286

Closing as resolved, let us know if you have anymore concerns.


Staff detection module

Are y'all eventually going to publish or open-source the staff-detection module in the paper?

Not sure if that helps you, but I put together homr which combines TrOMR trained on the grandstaff dataset with a staff detection module which is based on the segmentation models of oemer. The staff detection is unrelated to what is described in the TrOMR paper, but depending on what you try to achieve it might be useful to you.


Comments / editing on reviews

It is currently not possible to create a review for a teacher/course, correct? Is there a reason for this? Is this website still being maintained?

@Kirito139 Correct. I stopped hosting and maintaining this iteration of the project sometime in 2021 after I graduated. There is a static version up at https://studentsreview.github.io/fiat. I was going to find someone to take it over, but AFAIK Lowell had stopped doing Arena at that time so I didn't bother. Let me know if you're interested in reviving it, I'd be happy to provide any insights from my experiences with the project.

I'd love to revive it, but I currently do not have much free time to spend on it and so progress would be slow. Also I only have a little bit of programming experience in python (and practically none in other languages) and I haven't programmed in... too long so I am not sure how well I'd maintain it—though I am willing to learn. I noticed that the website at studentsreview.me shut down a couple months ago. Is there a reason it was but the GitHub page wasn't? Also, what's arena?

@Kirito139 I stopped paying for the studentsreview.me domain and just moved it to https://studentsreview.github.io/fiat, which is free. Arena was the name of Lowell's course selection system, where you could choose your own teachers/classes. Helping people with Arena was the main goal of the site.

Ah I see. Arena was tied to the mod system, yes? Sounds really nice, better than what we have now. However, I believe this project can still help with course selection, since students can review courses as well as teachers. Plus, it's nice to know what to expect when they tell you which teachers you have.


Rename variable assignment

The type created after assignment is a Weight type.  Using a var name vb which is short for virtual byte is incorrect.
Pulled this out of stale PR 2215

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

4 of 4 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 83.092%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
19652

Relevant Lines:
23651

💛  - Coveralls

Looks like there's one more test that needs this update as well:
(Starting at line 174)
#[test]
    fn from_vb_unchecked() {
        let vb = Weight::from_vb_unchecked(1);
        assert_eq!(Weight(4), vb);
    }


Move conditional determining faction colors into utils.js

Instead of needing to rewrite conditionals to determine faction color, there's a function for it in utils.js called faction()
TODO:

[x] generalize this more so it can be used along with resEmbed.addField() and other things maybe?
[x] figure out why outfit activity isn't working for me

Tested locally, all looks good!


We are getting connection closed error while trying to generating the PDF merge by Adobe.DocumentCloud.Services

Expected Behaviour
We are looking for
Actual Behaviour

The underlying connection was closed: An unexpected error occurred on a send
PS E:\exe\ErrorDrillDown\adobe_test\adobe_test> .\ConsoleAppTest.exe
Enter any key to start
Start of Process
Getting file names
Getting credentials
proceeding to executionContext
proceeding to createPdfOperation
Assigning doc file to file reference
Setting input
Starting to execute pdf operation
Error response received for the request: The underlying connection was closed: An unexpected error occurred on a send.
at Adobe.DocumentCloud.Services.core.http.HttpClient.ExecuteRequest[T](HttpBaseRequest baseRequest)
at Adobe.DocumentCloud.Services.core.http.HttpClient.<>c__DisplayClass11_01.<Execute>b__0() at Polly.Policy1.<>c__DisplayClass11_0.b__0(Context ctx, CancellationToken ct)
at Polly.Retry.RetryEngine.Implementation[TResult](Func3 action, Context context, CancellationToken cancellationToken, ExceptionPredicates s houldRetryExceptionPredicates, ResultPredicates1 shouldRetryResultPredicates, Action4 onRetry, Int32 permittedRetryCount, IEnumerable1 sleepD
urationsEnumerable, Func4 sleepDurationProvider) at Polly.Retry.RetryPolicy1.Implementation(Func3 action, Context context, CancellationToken cancellationToken) at Polly.Policy1.Execute(Func3 action, Context context, CancellationToken cancellationToken) at Polly.Policy1.Execute(Func1 action) at Adobe.DocumentCloud.Services.core.http.HttpClient.Execute[T](HttpBaseRequest baseRequest) at Adobe.DocumentCloud.Services.core.api.CPFApi.CPFPredictApi[T](InternalExecutionContext context, ContentAnalyzerRequestsDto contentAnalyzer RequestsDto, List1 sourceFileRefList)
at Adobe.DocumentCloud.Services.core.api.CreatePDFApi.ConvertToPdf(InternalExecutionContext context, FileRefImpl sourceFileRef, CreatePDFOpti
ons createPdfOptions)
at Adobe.DocumentCloud.Services.pdfops.CreatePDFOperation.Execute(ExecutionContext context)
at ConsoleAppTest.Program.Main(String[] args) in C:\Users\61380\source\repos\ConsoleAppTest\ConsoleAppTest\Program.cs:line 76
Adobe.DocumentCloud.Services

We tried to use the adobe login and got error

Error response received for the request: The SSL connection could not be established, see inner exception. Unable to read data from the transpor
t connection: An existing connection was forcibly closed by the remote host..
PS E:\exe\ErrorDrillDown\adobe_core_test_09032022_1\adobe_core_test> .\Adobe_core.exe
Enter any key to start
Start of Process
Getting file names
Getting credentials
proceeding to executionContext
proceeding to createPdfOperation
Assigning doc file to file reference
Setting input
Starting to execute pdf operation
Error response received for the request: The SSL connection could not be established, see inner exception. Unable to read data from the transpor
t connection: An existing connection was forcibly closed by the remote host..
at Adobe.DocumentCloud.Services.core.http.HttpClient.ExecuteRequest[T](HttpBaseRequest baseRequest)
at Adobe.DocumentCloud.Services.core.http.HttpClient.<>c__DisplayClass11_01.<Execute>b__0() at Polly.Policy1.<>c__DisplayClass11_0.b__0(Context ctx, CancellationToken ct)
at Polly.Retry.RetryEngine.Implementation[TResult](Func3 action, Context context, CancellationToken cancellationToken, ExceptionPredicates s houldRetryExceptionPredicates, ResultPredicates1 shouldRetryResultPredicates, Action4 onRetry, Int32 permittedRetryCount, IEnumerable1 sleepD
urationsEnumerable, Func4 sleepDurationProvider) at Polly.Retry.RetryPolicy1.Implementation(Func3 action, Context context, CancellationToken cancellationToken) at Polly.Policy1.Execute(Func3 action, Context context, CancellationToken cancellationToken) at Polly.Policy1.Execute(Func1 action) at Adobe.DocumentCloud.Services.core.http.HttpClient.Execute[T](HttpBaseRequest baseRequest) at Adobe.DocumentCloud.Services.core.api.CPFApi.CPFPredictApi[T](InternalExecutionContext context, ContentAnalyzerRequestsDto contentAnalyzer RequestsDto, List1 sourceFileRefList)
at Adobe.DocumentCloud.Services.core.api.CreatePDFApi.ConvertToPdf(InternalExecutionContext context, FileRefImpl sourceFileRef, CreatePDFOpti
ons createPdfOptions)
at Adobe.DocumentCloud.Services.pdfops.CreatePDFOperation.Execute(ExecutionContext context)
at Adobe_core.Program.Main(String[] args) in C:\Users\61380\source\repos\Adobe_core\Adobe_core\Program.cs:line 79
Adobe.DocumentCloud.Services
Reproduce Scenario (including but not limited to)
  We are trying to merge PDF which is not happening. we are getting connection closed error. It is working in local but not working in the server.

Steps to Reproduce

Platform and Version
.Net windows service

Sample Code that illustrates the problem
string StartService = ConfigurationManager.AppSettings["AdobeStartService"];
if (StartService == "true")
{
string privatekey = File.ReadAllText(AppDomain.CurrentDomain.BaseDirectory + "/private.key"); //changes made by Nallasivan/Rahul/Chandana/uncommented the adobe service
string jsoncredentials = File.ReadAllText(AppDomain.CurrentDomain.BaseDirectory + "/pdfservices-api-credentials.json");
PrivateKey jsoncred = JsonConvert.DeserializeObject(jsoncredentials);
Credentials credentials = Credentials.ServiceAccountCredentialsBuilder()
.WithAccountId(jsoncred.account_id)
.WithClientId(jsoncred.client_id)
.WithClientSecret(jsoncred.client_secret)
.WithOrganizationId(jsoncred.organization_id)
.WithPrivateKey(privatekey).Build();
ExecutionContext executionContext = ExecutionContext.Create(credentials);
CreatePDFOperation createPdfOperation = CreatePDFOperation.CreateNew();
// Set operation input from a source file.
FileRef source = FileRef.CreateFromLocalFile(docPath);
createPdfOperation.SetInput(source);
// Execute the operation.
FileRef result = createPdfOperation.Execute(executionContext);
// Save the result to the specified location.
result.SaveAs(DestinationPDFFilePath);
/* PDF conversion Ends */
}
Logs taken while reproducing problem
  Attached in the ticket

We checked firewall and TLs version. Then network team has changed setting and we are able to connect to the Adobe.DocumentCloud.Services , we are closing the ticket


Intermittent startup issue

On the first startup of ACT, it seems that the overlays don't work (I'm using Raidboss and Eureka). The OverlayPlugin log has the following info:
11/22/2018 8:21:23 PM: Info: InitPlugin: PluginDirectory = C:\Program Files (x86)\Advanced Combat Tracker\Plugins\OverlayPlugin
11/22/2018 8:21:23 PM: Info: LoadAddons: C:\Program Files (x86)\Advanced Combat Tracker\Plugins\OverlayPlugin\addons\CactbotOverlay.dll
11/22/2018 8:21:23 PM: Info: LoadAddons: Cactbot.OverlayAddonMain: Initialized
11/22/2018 8:21:23 PM: Info: InitPlugin: Initialized.
11/22/2018 8:21:25 PM: Info: Raidboss: cactbot: <IP_ADDRESS> C:\Program Files (x86)\Advanced Combat Tracker\Plugins\OverlayPlugin\addons\CactbotOverlay.dll
11/22/2018 8:21:25 PM: Info: Raidboss: OverlayPlugin: <IP_ADDRESS> C:\Program Files (x86)\Advanced Combat Tracker\Plugins\OverlayPlugin\OverlayPlugin.Common.dll
11/22/2018 8:21:25 PM: Info: Raidboss: FFXIV Plugin: <IP_ADDRESS>
11/22/2018 8:21:25 PM: Info: Raidboss: ACT: <IP_ADDRESS>7 C:\Program Files (x86)\Advanced Combat Tracker\Advanced Combat Tracker.exe
11/22/2018 8:21:25 PM: Info: Raidboss: Language: en
11/22/2018 8:21:28 PM: Info: Raidboss: BrowserConsole: Uncaught TypeError: Cannot read property 'OnDataFilesRead' of undefined (Source: file:///C:/Program%20Files%20(x86)/Advanced%20Combat%20Tracker/Plugins/OverlayPlugin/cactbot/ui/raidboss/popup-text.js, Line: 544)
11/22/2018 8:21:28 PM: Info: Raidboss: BrowserConsole: Uncaught TypeError: Cannot read property 'SetDataFiles' of undefined (Source: file:///C:/Program%20Files%20(x86)/Advanced%20Combat%20Tracker/Plugins/OverlayPlugin/cactbot/ui/raidboss/raidboss.js, Line: 49)
11/22/2018 8:21:28 PM: Info: Eureka: BrowserConsole: Uncaught TypeError: Cannot read property 'OnZoneChange' of undefined (Source: file:///C:/Program%20Files%20(x86)/Advanced%20Combat%20Tracker/Plugins/OverlayPlugin/cactbot/ui/eureka/eureka.js, Line: 1732)
11/22/2018 8:21:28 PM: Info: Raidboss: BrowserConsole: Uncaught TypeError: Cannot read property 'OnInCombatChange' of undefined (Source: file:///C:/Program%20Files%20(x86)/Advanced%20Combat%20Tracker/Plugins/OverlayPlugin/cactbot/ui/raidboss/popup-text.js, Line: 538)
11/22/2018 8:21:28 PM: Info: Raidboss: BrowserConsole: Uncaught TypeError: Cannot read property 'OnZoneChange' of undefined (Source: file:///C:/Program%20Files%20(x86)/Advanced%20Combat%20Tracker/Plugins/OverlayPlugin/cactbot/ui/raidboss/popup-text.js, Line: 535)
11/22/2018 8:21:28 PM: Info: Eureka: BrowserConsole: Uncaught TypeError: Cannot read property 'OnPlayerChange' of undefined (Source: file:///C:/Program%20Files%20(x86)/Advanced%20Combat%20Tracker/Plugins/OverlayPlugin/cactbot/ui/eureka/eureka.js, Line: 1729)
11/22/2018 8:21:28 PM: Info: Raidboss: BrowserConsole: Uncaught TypeError: Cannot read property 'OnPlayerChange' of undefined (Source: file:///C:/Program%20Files%20(x86)/Advanced%20Combat%20Tracker/Plugins/OverlayPlugin/cactbot/ui/raidboss/popup-text.js, Line: 532)
11/22/2018 8:21:28 PM: Info: Eureka: BrowserConsole: Uncaught TypeError: Cannot read property 'OnLog' of undefined (Source: file:///C:/Program%20Files%20(x86)/Advanced%20Combat%20Tracker/Plugins/OverlayPlugin/cactbot/ui/eureka/eureka.js, Line: 1735)
11/22/2018 8:21:28 PM: Info: Raidboss: BrowserConsole: Uncaught TypeError: Cannot read property 'OnLog' of undefined (Source: file:///C:/Program%20Files%20(x86)/Advanced%20Combat%20Tracker/Plugins/OverlayPlugin/cactbot/ui/raidboss/popup-text.js, Line: 541)
11/22/2018 8:21:28 PM: Info: Raidboss: BrowserConsole: Uncaught TypeError: Cannot read property 'OnLogEvent' of undefined (Source: file:///C:/Program%20Files%20(x86)/Advanced%20Combat%20Tracker/Plugins/OverlayPlugin/cactbot/ui/raidboss/raidboss.js, Line: 46)

Resolving it is easy; simply restarting OverlayPlugin lets everything work, with a clean initialization log, so I'm guessing it's something to do with load timings.

Looks like gPopupText is being referenced before being initialized.
Do you have a means of consistently reproducing this?

I don't. Restarting ACT doesn't trigger it again, and I can't identify a pattern for it. The fact that it's event listener functions getting called before the initialization leads me to think that it just depends on loading timings.

Hmm, thanks.  I had hoped that 3f8e28c0be had sorted all of these out, but clearly that's not true.  I'll take a look at this.

WOuld like to re-open this issue as it seems related:
30/06/2019 14:58:07: Info: Cact_Raid: BrowserConsole: Uncaught TypeError: Cannot read property 'OnPlayerChange' of undefined (Source: file:///F:/Advanced%20Combat%20Tracker/plugins/overlay/cactbot/ui/raidboss/popup-text.js, Line: 514)
30/06/2019 14:58:07: Info: Cact_Raid: BrowserConsole: Uncaught TypeError: Cannot read property 'OnPlayerChange' of undefined (Source: file:///F:/Advanced%20Combat%20Tracker/plugins/overlay/cactbot/ui/raidboss/popup-text.js, Line: 514)
30/06/2019 14:58:07: Info: Cact_Raid: BrowserConsole: Uncaught TypeError: Cannot read property 'OnPlayerChange' of undefined (Source: file:///F:/Advanced%20Combat%20Tracker/plugins/overlay/cactbot/ui/raidboss/popup-text.js, Line: 514)
30/06/2019 14:58:07: Info: Cact_Raid: BrowserConsole: Uncaught TypeError: Cannot read property 'OnPlayerChange' of undefined (Source: file:///F:/Advanced%20Combat%20Tracker/plugins/overlay/cactbot/ui/raidboss/popup-text.js, Line: 514)
30/06/2019 14:58:07: Info: Cact_Raid: BrowserConsole: Uncaught TypeError: Cannot read property 'OnLog' of undefined (Source: file:///F:/Advanced%20Combat%20Tracker/plugins/overlay/cactbot/ui/raidboss/popup-text.js, Line: 523)
30/06/2019 14:58:07: Info: Cact_Raid: BrowserConsole: Uncaught TypeError: Cannot read property 'OnLogEvent' of undefined (Source: file:///F:/Advanced%20Combat%20Tracker/plugins/overlay/cactbot/ui/raidboss/raidboss.js, Line: 47)
30/06/2019 14:58:07: Info: Cact_Raid: BrowserConsole: Uncaught TypeError: Cannot read property 'OnPlayerChange' of undefined (Source: file:///F:/Advanced%20Combat%20Tracker/plugins/overlay/cactbot/ui/raidboss/popup-text.js, Line: 514)

This happens since a while (not only since SHB) but I shrugged it off until now.
General DPS parsing works.
ACT: <IP_ADDRESS>
Overlay: <IP_ADDRESS>
Cact:  0.10.0


env_exports/*.yml files are empty

The env_export/*.yml files are empty, because of that none of the libraries are getting installed to the docker image.

@qtangs Could you please guide here? Unable to see the packages installed in the environments.

Sorry, unfortunately I'm not able to find time to look into these issues.
Maybe you can check these out as alternatives:
https://github.com/aws/sagemaker-training-toolkit
https://github.com/aws/deep-learning-containers


text encoding issue

when I user the client method ExactOnline.Client.Sdk.Helpers.Insert(ref SalesEntry entity);
the SalesEntry.SalesEntryLines item's Description is subscription Jaar lid (€ 2,99 p/m) voor test test
but the post data i find in fiddler is : Description=subscription Jaar lid (?2,99 p/m) voor test test

I have not been able to reproduce this. Both in Fiddler and in the resulting sales entry in Exact Online I'm seeing the euro sign. Below is the code I used for testing.
var salesEntry = new SalesEntry()
{
	Customer = GetCustomer(),
	Journal = GetSalesJournal()
};

var line = new SalesEntryLine()
{
	Description = "Jaar lid (€ 2,99 p/m)",
	GLAccount = GetRevenueAccount(),
	AmountFC = 100
};

salesEntry.SalesEntryLines = new List<SalesEntryLine> { line };
var created = client.For<SalesEntry>().Insert(ref salesEntry);

Thanks for your reply.
I think I find the reason. What I use the SDK version is 1.0.0. But In my solution I use the Newtonsoft.Json's version is <IP_ADDRESS>. So I think this is the reasion to the text encoding problem reason.
After I change the Newtonsoft.Json. It works good.

Allright, good to hear you got it working. I am closing this issue.


Fixed LF and CRFL issue

Reasons for making this change:
TODO
Links to documentation supporting these rule changes:
TODO
If this is a new template:

Link to application or project’s homepage: TODO

Fixes the issue.

Looks like .gitconfig entries, but definitely not something that should go into a gitignore files...

Fixes the issue.

@Pranavmn without more context about what this is potentially fixing, I cannot accept this change. As @drothmaler points out, this looks like the contents of a .gitconfig file.

Oh sorry there was a mistake I meant to make that change to my own
gitignore file in my repository and not make a suggestion to you guys.
Sorry about that.
On Mon, Apr 6, 2020 at 11:42 AM Brendan Forster<EMAIL_ADDRESS>wrote:

Fixes the issue.
@Pranavmn https://github.com/Pranavmn without more context about what
this is potentially fixing, I cannot accept this change. As @drothmaler
https://github.com/drothmaler points out, this looks like the contents
of a .gitconfig file.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/github/gitignore/pull/3365#issuecomment-609968998,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANKPUVFTG5PI2MLVILIJUVDRLIPAVANCNFSM4MB2JU4A
.


Unexpected breaking change on patch version

Hi, I think this commit should be a breaking change on node version and should pump to v2 instead? https://github.com/JounQin/remark-preset-prettier/commit/1895900b45826d92b8373bf52c4022118be6ce87

I'm sorry I didn't notice this issue previously.
  "engines": {
-     "node": ">=12.20"
+     "node": "^12.20 || ^14.18.0 || >=16.0.0"
   },

Mostly it should not be a breaking, but of course it could be.
Do you meet such situation?

Yes, unfortunately I do. The reason is my libraries supports node 14.17, which is still within LTS range. Because of that, I have to test my libraries in node 14.17 and that is where I would hit this change.

Sorry, I didn't mean to break your pipeline, I'll revert and publish a major version instead.

@foray1010 v1.0.2 has been released, I learned that my work could affect users unexpectedly now! I'll be more carefully in the future.


man ansiweather?

why no man page? it would really help.
thanks

It's been there for a while already: https://github.com/fcambus/ansiweather/blob/master/ansiweather.1


Add SessionSerializer interface

This adds a SessionSerializer interface which provides a hook to specify the encoder used to de/serialize session data. There are two built-ins: GobSerializer which provides the same functionality as the current implementation and JSONSerializer which serialises to JSON.

Thanks for the additions!

This looks great. @andrewgleave — would be good to see this in the underlying securecookie1 library too so that cookie values can be JSON encoded instead of gob. If you're not keen on that or don't have the time let me know as I'd be willing to submit a PR on that front too.
Go's JSON implementation is (AFAIK) a fair bit faster than gob these days.

I've just seen this now so nice work!


Child selectors are discarded by @griffel/webpack-loader

After updating from<EMAIL_ADDRESS>to<EMAIL_ADDRESS>we discovered that the newer Griffel version bundled with the package removes child selectors after webpack compilation.
In dev mode, where we do not compile styles ahead of time, child selectors still work. It seems to be related to storing some of the styles in a separate object.
Example of failing code:
const menuListStyles = {
  /** Loop app style overrides for Fluent UI `<MenuDivider />` component. */
  [`& .${menuDividerClassNames.root}`]: {
    ...shorthands.margin('4px', '-8px')
  },
}

/** Loop app style overrides for @fluentui/react-menu. */
const useMenuStyles = makeStyles({
  /** Loop app style overrides for Fluent UI `<MenuPopover />` component. */
  popover: {
    boxShadow: tokens.shadow28,
    ...menuListStyles
  },
  list: menuListStyles,
  /**
   * Style overrides for Fluent UI `<MenuPopover />` component that apply acrylic background.
   */
  popoverAcrylicColorized: {
    [`& .${menuItemClassNames.root}`]: {
      backgroundColor: 'transparent' // this still works
    }
  },
});

Can you please clarify what version of @griffel/webpack-loader is used? I made the example with following dependencies:
{
  "dependencies": {
    "@fluentui/react-components": "^9.0.1",
    "@griffel/webpack-loader": "^2.0.8"
  }
}

Internally both Webpack loader & runtime version use the same function resolveStyleRulesForSlots() from @griffel/core, it resolves input to CSS and classes.
In my sandbox you can run styles.js with node src/styles.js, it returns:
[
  {
    popover: { E5pizo: 'f1btsmd1', jeaxjv: 'f1l1of6r' },
    list: { jeaxjv: 'f1l1of6r' },
    popoverAcrylicColorized: { Bso1b62: 'fcozxal' }
  },
  {
    d: [
      '.f1btsmd1{box-shadow:var(--shadow28);}',
      '.f1l1of6r .fui-MenuDivider{color:pink;}',
      '.f1l1of6r .fui-MenuDivider{color:pink;}',
      '.fcozxal .fui-MenuItem{background-color:transparent;}'
    ]
  }
]

To run Webpack just do webpack, it will output dist/main.js. On the bottom of that file you can find:

The output from src/styles.js & in dist/main.js is the same (Webpack loader de-duplicated CSS rules in output).

Sorry, but it's unclear to me what does not work... Would you mind to create a simple reproduction for this and fork mine example? You can also share a repository with a repro on Github that I can clone.
Do you have multiple version of @griffel/* packages in your yarn.lock?

I debugged the issue in a product and it was present there. TL;DR It was a bug in @linaria/shaker and it's fixed already (https://github.com/callstack/linaria/commit/38a5541d26142cafa859ceffa6922ef559c57100).

The minimal reproduction for this case are following styles:
const menuListStyles = {
  [`& .${menuItemClassNames.root}`]: {
    color: 'red'
  },
  [`& .${menuItemClassNames.root}:hover`]: {
    color: 'blue'
  },
};

While the is nothing wrong with them, they will be transformed to following JS:
	var menuListStyles = (_menuListStyles = {}, (0, _defineProperty2.default)(_menuListStyles, "& .".concat(_reactComponents.menuItemClassNames.root), {
	  color: 'red'
	}), (0, _defineProperty2.default)(_menuListStyles, "& .".concat(_reactComponents.menuItemClassNames.root, ":hover"), {
	  color: 'blue'
	}), _menuListStyles);

And as @linaria/sharer has an issue with defineProperty that code was shaked out false positively.

The fix was done in<EMAIL_ADDRESS>while the product was on 3.0.0-beta.15. I will create a PR to bump dependency requirements 🚀


"Popular public registrations" section of Activity page is empty

Summary
On the "Public Activity" page of the OSF, there are four parts to the page. One of those sections- "Popular Public Registrations"- has no entries as of 9pm EST March 1, 2015.
Severity: Probably minor
Link to affected page: https://osf.io/explore/activity/#popularPublicRegistrations

Links to files/ views
This is the template that renders the page:
https://github.com/CenterForOpenScience/osf.io/blob/develop/website/templates/public/pages/active_nodes.mako#L40
The desired template variable is indeed being passed in from the corresponding view:.
https://github.com/CenterForOpenScience/osf.io/blob/develop/website/discovery/views.py#L77
Additional notes
I don't currently have a dev environment set up to run the OSF (or full knowledge of the internal data structures), so I can only speculate. It appears that popularity is gauged by a call to the Piwik API:
        popular_project_ids = [
            x for x in client.custom_variables if x.label == 'Project ID'

There do appear to have been several new registrations in the relevant timeframe ( https://osf.io/explore/activity/#newPublicRegistrations ), so it doesn't seem likely that the empty list is due to a lack of matching nodes.
The list of popular projects AND registrations is generated by filtering the single above query based on node type- perhaps there's something in the logic for identifying what is a registration?
https://github.com/CenterForOpenScience/osf.io/blob/develop/website/discovery/views.py#L22

Thank you @abought

Since I've been working with Piwik for the past couple of days, I should be able to knock this one out quickly. I'm on it! :fast_forward:


Improve zsh hook

Currently tea's zsh hook is below.
add-zsh-hook -Uz chpwd(){ source <(tea -Eds) }

This seems to cause my shell to keep erasing the shell result every time I run a command (I don't know exactly why yet)
When I run the command below with and without hook I get result below.
$ echo "${chpwd_functions[@]}"

_tea_hook _direnv_hook @zinit-scheduler # without tea hook
_tea_hook _direnv_hook # with tea hook

I tried this way below instead and it seems to work better.
(pretty much copied from https://github.com/direnv/direnv/blob/f265a7fb1553242a180eee6d1073636e7be0dc8c/internal/cmd/shell_zsh.go#L9-L23)
_tea_hook() {
  source <(tea -Eds)
}

typeset -ag chpwd_functions;

if [[ -z "${chpwd_functions[(r)_tea_hook]+1}" ]]; then
  chpwd_functions=( _tea_hook ${chpwd_functions[@]} )
fi

Currently I don't have enough zsh knowledge to pinpoint what exactly is the problem and what exactly is the suggestion but reporting it already as I discovered an issue. I will add more information if I can find more.

yikes. Presumably #287 is the problem.
Your solution seems like a great addition even though I need to try fixing the “remove one line” behavior first.

Haha yeah. But I wouldn’t care if it’s one line or two lines, three lines. Alternatively you could make the cli to print these line via the cli it self and let people to eval it in their .zshrc like
eval “(tea hook zsh)”

Then you can maintain the one line promise!

0.19.0 in fact does this! Probs for the same reasons you came to.
source <(tea --magic)

In terms of being slow, we intend to rewrite in Rust once we're stable. So for now it may add more slowdown than we'd like (<100ms) but eventually we should be super minimal.

Cool for the 0.19.0 update!
So I see that one-liner now changed to below.
test -d "$HOME/.tea" && source <("$HOME/.tea/tea.xyz/v*/bin/tea" --magic --silent)
# from the previous one, `add-zsh-hook -Uz chpwd(){ source <(tea -Eds) }`

after I just got upgraded to 0.19.1 via sh <(curl https://tea.xyz)
However the problem still remains as with the result of tea --magic --silent is below.
# this file is generated and should not be edited

function command_not_found_handler {
  if [ "$TEA_MAGIC" != 0 -a -x "/home/thisuser/.tea/tea.xyz/v0.19.1/bin"/tea ]; then
    "/home/thisuser/.tea/tea.xyz/v0.19.1/bin"/tea -- $*
  fi
}

add-zsh-hook -Uz chpwd() {
  if [ "$TEA_MAGIC" != 0 -a -x "/home/thisuser/.tea/tea.xyz/v0.19.1/bin"/tea ]; then
    source <("/home/thisuser/.tea/tea.xyz/v0.19.1/bin"/tea --env --keep-going --silent --dry-run=w/trace)
  fi
}

# if the user put tea in eg. /usr/local/bin then don’t pollute their PATH
# if ! tea true 2>&1 >/dev/null; then
  export PATH="/home/thisuser/.tea/tea.xyz/v0.19.1/bin:$PATH"
# fi

But then now the logic of adding the hook is hide behind the source thanks to 0.19.0, so fixing this would not requires from user side any more other than updating tea! (as long as there is gonna be fix later)

Also as a side note just to let my idea out there, since I just conducted updating tea for the first time (and learned that the way to do it is just to do the same as installing), maybe adding a shortcut flag (or subcommand) like tea [--]upgrade could invoke running sh <(curl https://tea.xyz) for users - with being transparent on that and giving the choice to continue (unless with explicit flag to just go for it). This would be a quick way to upgrade tea, as long as the domain tea.xyz, never changes.

tea -S +tea.xyz does in fact upgrade tea (tea is a pkg too).
The “deleting line” issue should be fixed BTW.
I'm looking at improving the hook per your suggestion RN 👊🏻

Thanks and can't wait to see the improvements!
If the "deleting line" is referring to below

This seems to cause my shell to keep erasing the shell result every time I run a command

(I also assume the fix is coming from https://github.com/teaxyz/cli/commit/c908653b66df4a8f89b654fd357b5fb2bbfe977b?)
I just installed tea (0.22.1) to a new macOS machine and I still see the erasing line behaviour.
However, this time I found a better clue.
When I comment this line out, https://github.com/ryuheechul/dotfiles/blob/a3d104324a49662f567ff9f8f44c2ead19ffb75c/zsh/my_addons/znap#L17, this behaviour no longer happens.
Why I believe that's the line of the issue?
because I see not only stdout gets erase but I also see these error messages
.znap.prompt.precmd:7: no such file or directory:
.znap.prompt.precmd:8: no such file or directory:

And I believe it's something to do with this - https://github.com/marlonrichert/zsh-snap/blob/4a5b447bc4e43810fbfd931bae4c1be11a9ffdc9/functions/.znap.prompt#L19
However when I manually improve the hook initialization to following to test, "erasing behavior" no longer happens.
diff --git a/source-tea-old b/source-tea-new
index b1f05ce..716c1c1 100644
--- a/source-tea-old
+++ b/source-tea-new
@@ -1,19 +1,25 @@
 # vim: set ft=zsh:

-add-zsh-hook -Uz chpwd() {
+_tea_hook() {
   if [ "${TEA_MAGIC:-}" != 0 -a -x "/Users/user/.tea/tea.xyz/v*/bin"/tea ]; then
     source <("/Users/user/.tea/tea.xyz/v*/bin"/tea +tea.xyz/magic -Esk --chaste env)
   fi
 }

+typeset -ag chpwd_functions;
+
+if [[ -z "${chpwd_functions[(r)_tea_hook]+1}" ]]; then
+  chpwd_functions=( _tea_hook ${chpwd_functions[@]} )
+fi
+
 # if the user put tea in eg. /usr/local/bin then don’t pollute their PATH
 # we check for `tea --prefix` due to `gitea` being `tea` when installed with `brew`
 if ! command -v tea 2>&1 >/dev/null || ! tea --prefix 2>&1 >/dev/null; then
   export PATH="/Users/user/.tea/tea.xyz/v*/bin:$PATH"
 fi

 function command_not_found_handler {
   if [ "${TEA_MAGIC:-}" != 0 -a -x "/Users/user/.tea/tea.xyz/v*/bin"/tea ]; then
     "/Users/user/.tea/tea.xyz/v*/bin"/tea -- $*
   fi
 }

(Again I don't know enough to know clearly about why this works but not the other)
So if the improvement is going to be similar to this way, then I believe it will probably fix it!

@mxcl just upgraded to 0.22.3 and it works like a charm, thank you!


GET ALL MEMORIES OF USER

🐛 Describe the bug

Why all_memories return []. I have a struggle with store and retrieve data with mem0. Pls help me!!!

Hi @deconasser, I believe that is an issue of the LLM that you are using. It is highly likely that it cannot deduce any memory from the input text. Can you switch to a different model such as gpt-4o-mini?


Typos in new JavaScript make an RPG game

Describe the Issue
There is a typo in Step 45, the word propertry is misspelled.
Here is the typo
https://github.com/freeCodeCamp/freeCodeCamp/blob/f80e34a9509f3208c01524ea25dd573fcacbe760/curriculum/challenges/english/15-javascript-algorithms-and-data-structures-22/learn-basic-javascript-by-building-a-role-playing-game/62a7bfabe119461eb13ccbd6.md#L14
it should be

You should use dot notation to access the innerText property of text.

in step 26, you will be use is incorrect grammar, it should be you will be using or you will use
https://github.com/freeCodeCamp/freeCodeCamp/blob/f80e34a9509f3208c01524ea25dd573fcacbe760/curriculum/challenges/english/15-javascript-algorithms-and-data-structures-22/learn-basic-javascript-by-building-a-role-playing-game/62a3b49686792938718b90d3.md#L10

Additional context
If you would like to fix this issue, please make sure you read our guidelines for contributing, we prioritize contributors following the instructions in our guides. Join us in our chat room or the forum if you need help contributing, our moderators will guide you through this.
Sometimes we may get more than one pull requests. We typically accept the most quality contribution, followed by the one that is made first.
Happy contributing.

Is anybody working on this issue? if not I would like too

Hello.. I would like to contribute to this issue.. Kindly assign me the same


[Q] WASI Support?

Any chance Olin will eventually have WASI support?

It may in the future. I need to revisit a lot of things with Olin and Pa'i.


Ability to remove an EXIF tag (album, title, etc)

There should be a way to remove a tag that you've added or was already on a photo. This should include all supported tags (location, title, album, etc).

Unsure whether to use #107, this issue or a new issue to discuss this but I can see the finish line with regards to organising my images and now my mind is drifting to cleaning up file names
While I can use a tool like https://github.com/laurent22/massren/issues/36 to bulk manually do this I would prefer if elodie could handle this because any file names I update myself will get overrode next time I process with elodie
Although I currently to have control over the folder path structure I don't appear to have any control over the file name structure; IMO the latter being the least destructive approach (i.e. leaving Exif intact)
This would be my ideal file name:
yyyy-mm-dd_hh-mm-ss-hash.extension
// 2018-09-08_19-05-42-qb7z6trifnsis2w.jpg

If you agree, how do we get there?
Yours hopefully

FYI A UUID hash would help identify sub second photos

What does the hash represent?

Hash could be generated off the file name with a random alphanumeric string appended to prevent sub-second file clashes
Yours hopefully


Alfen - NG920 - Eve Double Pro-line

Hi
here the status of this box after adding.
OCPP 2.0.1 did not work, so this is 1.6
I added as well the documentation from alfen to help supporting this wallbox with 2 Sockets

Backoffice Configuration keys 4.14.0.pdf
Hope this helps to fully support this and other Alfen boxes

Only these meter values are supported by the box
monitored_variables:
  - "Energy.Active.Import.Register"
  - "Current.Import"
  - "Current.Offered"
  - "Frequency"
  - "Power.Active.Import"
  - "Power.Factor"
  - "Temperature"
  - "Voltage"

Choose this in the OCPP setup in HA!
"Instantaneous current flow to EV",
"Maximum current offered to EV",
"Active energy imported from the grid",
"Powerline frequency",
"Instantaneous active power imported by EV",
"Instantaneous power factor of total energy flow",
"Temperature reading inside Charge Point",
"Instantaneous AC RMS supply voltage"
.

.

Hi "issue" was not the values alone but that I have two sockets.


Updated user guide for the policy library sync.

Addresses #164. Updated documentation for the policy library sync feature that will be released with Forseti 2.20.0. Related Terraform PR: https://github.com/forseti-security/terraform-google-forseti/pull/239
The updated user guide can be viewed here: https://github.com/gkowalski-google/policy-library/blob/feature/policy-library-sync-documentation/docs/user_guide.md

This LGTM, but let's get approval from @joecheuk as well.
We should also wait to merge this until the functionality is actually released.


save_drawable() not working properly

i was saving drawable image to device's folder
some image save but for some app stopped working showing no python error .
i have get some error by
adb logcat *:E | grep 'packagename'
Unknown bits set in runtime_flags: 0x40000000
05-19 22:45:01.478  9112  9112 E .hiddensettings: Invalid ID 0x00000000.
05-19 22:45:01.513  9112  9112 E .hiddensettings: ofbOpen failed with error=No such file or directory
05-19 22:45:01.513  9112  9112 E .hiddensettings: sysOpen failed with error=No such file or directory
05-19 22:45:01.513  9112  9112 E .hiddensettings: sharedImFd failed with error=Permission denied
05-19 22:45:04.527  9112  9169 F .hiddensettings: java_vm_ext.cc:591] JNI DETECTED ERROR IN APPLICATION: can't call int android.graphics.drawable.BitmapDrawable.getIntrinsicHeight() on instance of android.graphics.drawable.VectorDrawable
[22:47]
please see some error is this from permission . but i have give all permission
[22:48]
] JNI DETECTED ERROR IN APPLICATION: can't call int android.graphics.drawable.BitmapDrawable.getIntrinsicHeight() on instance of android.graphics.drawable.VectorDrawable
if platform=='android':
            packages=all_packages()
            j=0
            path_app=package_info('org.test.myapp')["dataDir"]
            print("*",path_app)

            for i in packages:
                print(i)
                _p=package_info(i)

                lpakages.append(i)
                lbl=_p['loadLabel']
                dp=p["loadIcon"]
                dp_path=save_drawable(dp, path_app+'/', str(j))
                #print("---",)
                ldpes.append(dp_path)
                lnames.append(lbl)
                lnoactivities.append('{} Activities'.format(len(_p['activities'])))
                j+=1

Testing done in Android 13

@Sahil-pixel I will have to test this first. I may not be quick to response because I'm quite busy

Ok. But please check it . When you have free time.


.StripExt cannot be used with .URL in a markdown template

If you are filing a bug report, please answer these questions. If your issue is not a bug report, you do not need to use this template. Either way, please consider donating if we've helped you. Thanks!
1. What version of Caddy are you running (caddy -version)?
0.8.2
2. What are you trying to do?
{{.StripExt .URL}}  in a markdown template.
3. What is your entire Caddyfile?
localhost:5050
markdown / {
  css /styles/main.css
  template templates/main.html
  template feed templates/feed.html
}
ext .md

4.  What did you expect to see?
The URL to be stripped of the .md extension.
6. What did you see instead (give full error messages and/or log)?
500 server response.

The URL is not a string, you'll need to do something like .URL.Path.

Ah ok, the .URL struct is not documented I think.
Should the .StripExt helper be able to take the URL struct? If it's a common interface I think it makes sense to.

Using either .URL.String or .URL.Path (even without .StripExt) gives me a 500 error. How can I get a better error to debug?

Add errors visible to your caddyfile.

Ah, so I didn't explain my issue well enough, I am using .URL within a .range and apparently it is a string and not a URL struct.  I'll take this to gitter as this is more of a support issue than a bug (I think).

Using .URL in a range statement will probably not work since the context/scope changes in a range statement. Use $.URL to access the URL as defined from the base/root context.


feat(examples): use new plugin alias

Summary

Thank you for making gql.tada! It feels like a breath of fresh air after many years of the good and trusted graphql-codegen. 🎉
When browsing the source code (especially the examples) I was a little confused:

The examples are not using the newish gql-tada/ts-plugin alias. Not sure if this is intended.
The example for React contained the somewhat (I think) advanced concept Persisted Queries but no simple showcase of variables and directives.

Hence...
Set of changes

all examples: removes @0no-co/graphqlsp dependency and instead uses the new plugin alias
example-pokemon-api: Make the example a little interactive with variables and a directive

I can update the Vue + Svelte Examples to match the React one if there is interest.
Thank you!

(side-note, a changeset isn't needed for non-user-facing changes, since the library itself isn't going to change and examples/ aren't published or subject to a changelog)
I've deliberately had to leave this out. When I implemented the alias, I noticed that TypeScript plugins aren't being correctly resolved in monorepos where the plugin is aliased from a different folder. In this case, gql.tada is linked via a symlink to basically ../../ relative to the examples' folders. TypeScript however seems to confuse the root folder used for this symlink and eventually attempts to then load the plugin from <rootDir>/../../ as far as I remember. This completely breaks the plugin.
I haven't gotten around to reporting and tracking this back down in TypeScript itself yet, but even if we do, this would mean that we couldn't change the examples for quite a while.
Since we still have (and will likely keep) the instructions here, I skipped the change to examples and didn't update them: https://gql-tada.0no.co/get-started/installation#prior-to-typescript-5-5

Thanks for the quick feedback @kitten.
Got it, I saw the behavior, a little tricky...I was first looking at the example in isolation with npm install where everything was working fine. When I was properly setting up the monorepo and running the checks (pnpm multi run check) I noticed it was broken.
Unfortunately I lack a little context for reporting that in the TS repo myself.
If you find 33e1987 interesting I can open that as a separate PR. In any case I'll go ahead and close here. Thanks!


Fix long desc / episode name crash

When a show desc or episdode name is longer than 32KB the import will fail due to reading old byte arrays and their lengths as shorts.  Remove the byte arrays in favor of just using strings so the application doesn't crash.

I'll merge it once Travis builds it and gives the green light. You may need to change your GIT settings to use the email address you signed the Google CLA with...I'm not sure whether or not it'll let me merge your change otherwise. I did look it up internally based on your email and see you did sign...so I'll try to merge...but it may block me...we shall see. :)

@Narflex do you have any idea when a new release version / installer would pick this up, i assume you have other stuff in the pipe for said release

I haven't built a new release in a long time...other people handle that now. :) I'm pretty sure the Windows ones are built manually...but the Linux ones I think are built automatically.  For this fix, you just need to replace the Sage.jar file so you should be able to do that yourself pretty easily.


Make PropertyPathToken public

All sub classes that extend PathToken are public except for PropertyPathToken. Is there any consideration for this class ? Why not make it public too？

I need this too to analyze the compiled json path structure.

Fixed!


Profile Extensions Not Being Validated

I have a profile on Practitioner that includes extension definitions as follows

The profile structure definition has been uploaded to the server, as well as each extension structure definition. I also have a slice on identifier as illustrated above. If I try to create the Practitioner resource without the required identifier I get the expected operation outcome. However, if I make one of the extensions mandatory, I do not get the same result. Furthermore, if I attempt to create the extension with a type other than what is defined (e.g. valueString vs valueReference) I do not receive a negative outcome.
Clearly the profile is defined correctly since the identifier is being validated. Am I missing something with the extensions?

@edwinnswift, could you please provide steps to reproduce the issue? We would also like to understand how you are using the $validate operation. For more information on the validation operation, please see the documentation link.

Closing issue as it is working as expected


User-supplied metatdata for attr.ib

It might be desirable to allow user-supplied metadata dict as part of an Attribute for use later during introspection. Something like:
@attr.s
class A:

    boring = attr.ib()
    i_am_special = attr.ib(metadata = {'special': True})

    def do_things(self):
        for a in attr.fields(type(self)):
            if a.metadata.get('special', False):
                self.do_something(a.name)
            else:
                self.do_something_else(b.name)

(above example is assuming attrs populates metadata with an empty dict if not provided.
Perhaps this is encourages more metaprogramming than is healthy, but I had a need for this in my first use of attrs; the alternative was keeping an explicit list of special attribute names, which is not very DRY. Just looking for design/desirability feedback before working on a patch.

This might be an interesting feature to somehow support. I myself am working on a library that would benefit from metadata like this (types in my case).
First of all, there are some technical issues, in that Attribute instances are immutable and Python doesn't have a frozendict, so we'd probably have to do this differently (like a tuple of tuples, or just put the metadata somewhere else).
Secondly, you can already do this, but it's not that straightforward. You'd have to define your own subclass of _CountingAttr to receive the metadata in the constructor, and your own decorator to get your metadata out of your custom _CountingAttrs and put it somewhere else before @attr.s switches _CountingAttrs to Attributes.
Also take a look at http://attrs.readthedocs.io/en/stable/extending.html.

I think it would be very attrs to expect metadata to be a proper class. :)

Since I want attrs to be extensible, I’m rather positively inclined to such an feature.

Yeah,  was thinking about how attr might play with type annotations...
Re: immutability - maybe metadata could be excluded from Attribute's hash/cmp, with a warning to users that if they modify it, they've made their bed & must lie in it.  Alternately storing metadata as 2-tuples with an accessor that builds the dict seems possible.
Another option if true immutability is really needed for Attributes would be a __attrs_metadata__ dict on the class with name => metadata and a helper method/property on Attribute to retrieve it.
But basically, having some way to associate arbitrary info that attracts itself doesn't use/care about seems useful.

I think it would be very attrs to expect metadata to be a proper class. :)

Hmm,  going the other direction, why require metadata to be any particular type in the first place? Could just be a slot for any user supplied object, without any implied semantics, kinda like how annotations (used to)  work.

Probably deserves it own issue, but this is broadly similar to supporting PEP 526-style first class attribute annotations.  See also this [section]  (https://www.python.org/dev/peps/pep-0526/#id7) which hint at a subset of attrs.readthedocs.io functionality

What I want for my personal use is something like go struct tags.http://stackoverflow.com/questions/10858787/what-are-the-uses-for-tags-in-go
@attr.s()
class C(object):
     first_name = attr.ib() + 'json:"firstName"'
     last_name = attr.ib(tag='json:"lastName" sql:"lastname"')

I'll fork and try how I like something like this for my own use. I think the first class attribute annotations solve this for me as well, but I need a placeholder for now and the + 'tag' may temporarily hold me over

The second style is covered by my metadata approach - a single additional
field on attributes with a dict (or any user-supplied object) that you can
interpret however you want.
The first style (+) is just gross.
Attribute annotations certainly complement this,  and I'd like to see attr
support them by dynamic introspection (ie,  Attribute.metadata is sugar
for reading the annotation off the class). I suppose you could argue that
there are use cases where you want independent metadata and annotation (for
making an attr class work with some 3rd party library that has its own
uses/opinions for the annotations).
On Aug 30, 2016 10:59 AM, "Paul Gruenbacher"<EMAIL_ADDRESS>wrote:

What I want for my personal use is something like go struct tags.
http://stackoverflow.com/questions/10858787/what-are-
the-uses-for-tags-in-go
@attr.s()
class C(object):
first_name = attr.ib() + 'json:"firstName"'
last_name = attr.ib(tag='json:"lastName" sql:"lastname"')
I'll fork and try how I like something like this for my own use. I think
the first class attribute annotations solve this for me as well, but I need
a placeholder for now and the + 'tag' may temporarily hold me over
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/hynek/attrs/issues/63#issuecomment-243468788, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAe2AAvSE9KWAN6yhY8FB3T3SMcxnpkqks5qlEU1gaJpZM4Jm0qX
.

Yes, adding a metadata attribute to _CountingAttr and Attribute is likely the way to go. If you want to be careful, use a frozen class, if not, just use a dict.
Pretty syntax is, then, easy:
@attr.s(slots=True, frozen=True)
class TypeMetadata:
    type = attr.ib()

def typed(t, **kwargs):
    kwargs['metadata'] = TypeMetadata(type=t)
    return _CountingAttr(**kwargs)

def typechecked(t, **kwargs):
    c_attr = typed(t, **kwargs)
    c_attr.validator = instance_of(t)  # Handle existing validator?

@attr.s
def MyClass:
    x = typed(int, validator=.., convert=...)
    y = typechecked(int, convert=...)

print(fields(MyClass(1, 2))[0].metadata.type)
int

@hynek Thoughts?

I'm my example there's actually no need to reach deep down for _CountingAttr (and it doesn't have optional parameters anyway), just wrapping attrs.attr is enough.
Also just for clarification, TypeMetadata, typed and typechecked in the example is user-written functionality. Although I think typed and typechecked would actually be useful in attrs itself, but that's a matter for another issue/PR.

so um is everyone on board with attr.ib(metadata=something_hashable)?

I can put together a PR. Do you want to assert it's hashable? We don't check for any of the other fields.

I can put together a PR. Do you want to assert it's hashable? We don't check for any of the other fields.

I couldn’t care less what people put in there; it’s a 100% user’s field.  I just thought there might be breakage if it isn’t.
OTOH this way is completely non-composable, right?  A dict would be freer—multiple extensions could make us of it.  Can anyone come up with use cases that might matter?

Yes, at first glance it's non-composable. This was what was tripping me up mentally at the beginning and why I mentioned the lamentable lack of frozendict in an earlier comment.
So let's consider a likely example of composing metadata. You're using two libraries which make use of some custom metadata. Let's pretend one of the libraries wants to know the Python type of your field, and the other wants to know what name to use to for the field when dumping to JSON.
Option one, with a dict:
# Library one, docs say it needs the 'type' field in the metadata
# Library two, docs say it needs 'to_json'
@attr.s
class MyClass:
    x = attr.ib(metadata={'to_json': 'X', 'type': int})

Option two, with classes:
# Library one:
@attr.s(frozen=True)
class TypeMetadata:
    type = attr.ib()

# Library two:
@attr.s(frozen=True)
class JsonMetadata:
    to_json_name = attr.ib()

# My app:
@attr.s
class MyMetadata(TypeMetadata, JsonMetadata):
    pass

@attr.s
class MyClass:
    x = attr.ib(metadata=MyMetadata(to_json_name='X', type=int))

Option two is more boilerplatey, and composes as much as classes compose (which if you're using simple attrs classes, is quite enough). Option two also has the benefits of structured data, so if you mistype 'as_json' instead of 'as_json_name', it'll blow up right away instead of not working silently, and if two libraries expect the same attribute name in their metadata it'll blow up early too. The dict approach isn't 100% composable either, the fields would have to be prefixed with their library name or namespaced in some other way to avoid clashes?
If you're mixing in more metadata, 3+, it'd be more complex and I would probably make my own wrapper for attr.ib with some logic inside.
Another solution would be to use a list of metadata? ¯\ (ツ)_/¯

paging @glyph :)

I really liked @Tinche 's idea for composing the metadata option 2. I'd suggest meta instead of metadata to save the 4 keystrokes, though I'd probably be using wrappers anyways to keep the meta declaration as terse as possible

I am very much in favor of @Tinche's Option 1 in my own code; I can never imagine writing something like Option 2 but I can imagine other folks on this thread will want to. From where I sit, it's not attr's business to dictate how the meta shoulld be used - that's the whole reason it's metadata. :-) Just hang on to whatever the user passed in but otherwise ignore it internally.
Along those lines, metadata shouldn't be in the hash & recommended-read-only but not enforced.

FWIW option two made me throw up a little. 🙈
Attrs will never contain anything that requires you to do multiple inheritance. 😱

Yes, mixins are... an acquired taste. Can we come up with something better than both options?
Or, you know, just let the field be free and let the ecosystem and your own conscience dictate what you put in it.

Scrapy has a dict meta attribute on it's Request/Response objects (that
it propagates for you in reasonable ways) used for similar purposes. (I
mention this only b/c I've been using it lately, not b/c I think it's the
end-all-be-all).
The nice thing about a dict is that it's basically a namespace, as opposed
to a single-valued-attribute... but I guess it's just a question of degree
of loosey-gooseyness at that point.
On Thu, Sep 1, 2016 at 4:18 PM, Tin Tvrtković<EMAIL_ADDRESS>wrote:

Yes, mixins are... an acquired taste. Can we come up with something better
than both options?
Or, you know, just let the field be free and let the ecosystem and your
own conscience dictate what you put in it.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/hynek/attrs/issues/63#issuecomment-244199197, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAe2AHcF8QbEpmi6B_knqgFlGqZ5NmtHks5qlzMRgaJpZM4Jm0qX
.

--
Pete Fein | wearpants.org | @wearpants

Brainstorming a little more.

Using classes for metadata is always going to be more verbose than using a dict. It depends on how much we're bothered by this and how much our metadata libraries help us.

This metadata field doesn't have to be something that's necessarily world readable directly. There's nothing stopping us from having a helper function; attr.get_metadata(cl, metadata_type). Again, our hypothetical world where we want two metadata types:

from typebla.attr import attr_type  # To be a little diverse.
from jsonbla import JsonMetadata

@attr.s
class MyClass():
    x = attr.ib(metadata=[attr_type(int), JsonMetadata(to_json_name='X')]

attr.get_metadata(MyClass, TypeMetadata)
> TypeMetadata(type=int)
attr.get_metadata(MyClass, JsonMetadata)
> JsonMetadata(to_json_name='X')
attr.get_metadata(MyClass, SomeOtherMetadata)
> None

My gut feeling is really against shortening 'Metadata' to 'Meta' since it makes me think of metaclasses. (For example, from Python 3.5 typing module, AnyMeta, UnionMeta, GenericMeta.)
attr.ib() could be clever and handle both an iterable metadata and a single metadata, so it wouldn't always have to be a list.

I don't like the idea of using classes like this.  It seems rather heavyweight when all we need is namespacing, and attributes should almost always be data rather than behavior.  In particular I do not like using __class__ or the like as a "key" to lookup metadata, because I'm going to want to use interfaces there most of the time.
  It's a lot of typing to declare a class with fields and a docstring and such when json_name=... would do.  It also causes tight binding to specific implementations, rather than allowing conventions to evolve that are shared between libraries.
If all the metadata needs to be supplied at attribute-construction time, then the possibility of namespace collisions is fairly minimal, and there's always the possibility of, e.g.:
from typebla.attr import attr_type  # To be a little diverse.
from jsonbla import to_json_name

@attr.s
class MyClass():
    x = attr.ib(metadata={attr_type: int, to_json_name: 'X'})

attr.get_metadata(MyClass, TypeMetadata)
>>> TypeMetadata(type=int)
attr.get_metadata(MyClass, JsonMetadata)
>>> JsonMetadata(to_json_name='X')
attr.get_metadata(MyClass, SomeOtherMetadata)
>>> None

if you want to get fancy and cooperate with other libraries.
All in all though, I don't know.  I can't think of a solution that fits together really neatly for me and doesn't require a huge amount of ceremony in the default "easy" case.  "any hashable object" at least allows for polite libraries to namespace, quick-and-dirty prototypes work, and makes attrs not really care one way or another.

IOW we’re agreeing it should be a dict?  Maybe we define a class MetaData() that is basically a dict but allows for nicer syntax:
@attr.s
class C:
    x = attr.ib(metadata=MetaData(attr_type=int, to_json_name="X")

and gives us some wiggle space, if want to implement magic?

Okay, going with the dict idea as the most user-friendly.
I think the magic can be done when converting _CountingAttr to Attribute anyway (or directly in the ib() function), so we can save ourselves some typing. Also dicts are more capable than kwargs in __init__. (You can't have a non-str key in **kwargs, which might be a way to implement a hook later on.)

IOW we’re agreeing it should be a dict? Maybe we define a class MetaData() that is basically a dict but allows for nicer syntax:

You can also just do dict(attr_type=int, to_json_name="X") for the nicer syntax. :)

I don't like the idea of having a type-with-kwargs as the type of the parameter though, because it makes it slightly harder to do namespacing; I want to be able to have fully qualified Python names ("i.e. strings with dots in") as keys in this dictionary.

OK whatever, dict it is.

How about I put together a PR for this and we can continue the discussion there?

Less talk more rock
On Sep 17, 2016 10:43 AM, "Tin Tvrtković"<EMAIL_ADDRESS>wrote:

How about I put together a PR for this and we can continue the discussion
there?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/hynek/attrs/issues/63#issuecomment-247776909, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAe2AF72dVNI1GKIRHHDrtUrJJuDo5FHks5qq_ymgaJpZM4Jm0qX
.

fixed by #96


Feature/search weekly challenges

Description
Design the search weekly challenges page
Type of Change

[x ] ✨ New feature (non-breaking change which adds functionality)
[ ] 🛠 Bug fix (non-breaking change which fixes an issue)
[ ] ❌ Breaking change (fix or feature that would cause existing functionality to change)
[ ] 🧹 Code refactor
[ ] ✅ Build configuration change
[ ] 📝 Documentation
[ ] 🗑 Chore

Changes

Please which part of the project your changes affect ?

[x ] Frontend (Templates, CSS, JS)
[ ] Backend (Dancer2, api-docs, Dockerfile)

Thanks for your contributions. @NoubissiViany

@manwar You are welcome. Thanks for your assistance and comprehension


Question about the use of quaternion in IMU deskewed

hi @koide3
I have a question about the use of  quaternion in prefiltering_nodelet.cpp.The  code involved shows as below:
      double delta_t = scan_period * static_cast<double>(i) / cloud->size();       Eigen::Quaternionf delta_q(1, delta_t / 2.0 * ang_v[0], delta_t / 2.0 * ang_v[1], delta_t / 2.0 * ang_v[2]);       Eigen::Vector3f pt_ = delta_q.inverse() * pt.getVector3fMap();
The usual method I have learned to use a quatermion is  "q=[cos(theta/2), nxsin(theta/2), nysin(theta/2), nz*sin(theta/2)]", where nx,ny,nz is the vector of rotation axis, and theta represents rotation angle.
So can you please explain above code?
Thank you.

Hi @FishInWave ,
It's a well-known approximation technique to compute a delta quaternion from angular velocity. See this.

@koide3
Thank you for your reply !!!  : )


Added support for setting policy tags for columns in BigQuery

resolves #2586
Description
Enables users to set policy tags on BigQuery columns by specifying the policy tag in the resource file for their models.
Checklist

[x] I have signed the CLA
[x] I have run this code in development and it appears to resolve the stated issue
[x] This PR includes tests, or tests are not required/relevant for this PR
[x] I have updated the CHANGELOG.md and added information about my change to the "dbt next" section.

Thanks so much! I'm going to get this merged in for 0.18.0b2.


Go 11x example is misleading

I recently converted from go1 (1.9?) to go111, and as it turns out, the go 11x example provided in this repository is misleading.
See this issue on StackOverflow: https://stackoverflow.com/a/58478111/953732 . By following the example and using http.ListenAndServe, it didn't let me use context for Datastore, resulting in error textPayload: "2019/10/20 22:32:46 http: panic serving <IP_ADDRESS>:16051: not an App Engine context. Apparently, the proper way of starting appengine is
func main() {
    appengine.Main()
}

Which will let you use the appengine like you used to in go1 and access the datastore with a proper context.
Please update the examples not to direct people down a solution that will work for only the most basic applications.

Hi @ThePiachu. Thank you for filing this issue.
There are two Datastore packages you can use:

https://godoc.org/cloud.google.com/go/datastore: Can be used for second generation App Engine Standard apps (Go 1.11+). Go 1.9 was the last "first generation" runtime for Go.
https://godoc.org/google.golang.org/appengine/datastore: Must be used in first generation apps. It can be used in Go 1.11, but you have to continue to use the rest of the google.golang.org/appengine set of packages (including the context). For Go 1.12 and beyond, these App Engine-specific APIs don't work.

Sorry this was unclear. If you switch to using cloud.google.com/go/datastore, you won't run into this problem. It also means you can write your app the same way you would write it anywhere else (say, if you were deploying this in a VM on GCE or using Cloud Run). Second generation runtimes avoid the need for (most) App Engine-specific code. This is described a bit here: https://cloud.google.com/appengine/docs/standard/go111/go-differences#migrating-appengine-sdk
I hope that helps.


Error: Cannot find module 'node:events'

I have starting getting "Error: Cannot find module 'node:events'" today on my build servers. I have not changed versions in a few months.
Have you seen this issue before or have others reported it?

I think Node 16 allows to import internal modules with node:... Did you downgrade your NodeJS environment?

@FrankRua How can I help you? Something must have changed to make the program behave differently. I would test the import once without node: and best also output the runtime version once.

@AnWeber I'm not sure what happened but it started working again. I think it was something with the build server not cleaning the directory before each build. Thank you anyways, I'll close this out.

@FrankRua thx for the response.


Data on onPost is compared before it's encoded to json

Description
According to my observation, the data field on dioAdapter.onPost is compared before it's encoded to json.
I use json_annotation, where some fields are configured not to be present if their value is null when encoded to json, but the tests are failing with "Could not find mocked route matching request for POST" and the data is shown with the null fields included + also instances have their types in the error message.
when I experimented with print(json.encode(originalData) == json.encode(expectationFromTest)); the result is true
Steps to reproduce
import 'package:dio/dio.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:http_mock_adapter/http_mock_adapter.dart';

void main() {
  final dio = Dio(BaseOptions(baseUrl: 'http://localhost'));
  final dioAdapter = DioAdapter(dio: dio);

  test('should pass', () async {
    dioAdapter.onPost('/test', (server) => server.reply(201, {}), data: {
      "myObj": {"nested": true}
    });

    final payload = {"myObj": TestObj()};
    final response = await dio.post('/test', data: payload);

    expect(response.statusCode, 201);
  });
}

class TestObj {
  Map<String, dynamic> toJson() => {
        'nested': true,
      };
}

Produces this error:

DioError [DioErrorType.other]: Assertion failed: "Could not find mocked route matching request for POST /test { data: {myObj: Instance of 'TestObj'}, query parameters: {}, headers: {content-type: application/json; charset=utf-8, content-length: 25} }"

Expected behavior
Data from dio.post is encoded before comparing to dioAdapter's onPost data
System details
[✓] Flutter (Channel stable, 3.0.5, on macOS 12.3.1 21E258 darwin-arm, locale en-HU)
[✓] Android toolchain - develop for Android devices (Android SDK version 32.1.0-rc1)
[✓] Xcode - develop for iOS and macOS (Xcode 13.2.1)
[✓] Chrome - develop for the web
[!] Android Studio (not installed)
[✓] IntelliJ IDEA Ultimate Edition (version 2021.3.3)
[✓] VS Code (version 1.64.1)
[✓] Connected device (2 available)
[✓] HTTP Host Availability
dio: ^4.0.4
http_mock_adapter: ^0.3.2

Just as a comment: This has two pieces that break. One is the signature comparison of the request and the second is the actual body comparison.
The first breaks because we see for the actual request this signature
 "POST /test { data: {myObj: Instance of 'TestObj'}, query parameters: {}, headers: {content-type: application/json, content-length: 25} }"
but it should be "POST /test { data: {myObj: {nested: true}}, query parameters: {}, headers: {} }".
The latter breaks because we have now a TestObj instance in the comparison and that is supposed to not match.


Cannot read property 'split' of null

rrsinghcbookpro: export SOURCE_COUCH_DB_URL=http://localhost:5984/crimes
rrsinghcbookpro: export TARGET_COUCH_DB_URL=http://localhost:5984/cchi
rrsinghcbookpro: export TRANSFORM_FUNCTION=no.js
rrsinghcbookpro: node app.js

/Users/rajrsingh/workspace/couchdb-db-transform/lib/util.js:73
       		urlObj.auth = urlObj.auth.split(':')[0];
       		                         ^

TypeError: Cannot read property 'split' of null
    at Object.getUrlWithoutPassword (/Users/rajrsingh/workspace/couchdb-db-transform/lib/util.js:73:28)
    at new CloudantRepository (/Users/rajrsingh/workspace/couchdb-db-transform/lib/util/cloudantRepository.js:55:35)
    at Replicator.<anonymous> (/Users/rajrsingh/workspace/couchdb-db-transform/lib/replicate.js:112:13)
    at Request._callback (/Users/rajrsingh/workspace/couchdb-db-transform/node_modules/nano/lib/nano.js:217:16)
    at Request.self.callback (/Users/rajrsingh/workspace/couchdb-db-transform/node_modules/request/request.js:187:22)
    at emitTwo (events.js:106:13)
    at Request.emit (events.js:191:7)
    at Request.<anonymous> (/Users/rajrsingh/workspace/couchdb-db-transform/node_modules/request/request.js:1044:10)
    at emitOne (events.js:96:13)
    at Request.emit (events.js:188:7)

Yup, sorry. My tests were all run against a hosted CouchDB, hence this one slipped through. I will add logic to cover the scenario where the URL does not contain credentials.

Delivered by #3


Cannot read property 'toLowerCase' of undefined

With minimal implementation as described in README I get the following error:
TypeError: Cannot read property 'toLowerCase' of undefined, js engine: hermes
Using "react-native": "0.71.8"

@JanMesaric hello.
this is not for react-native
you can use https://github.com/heyman333/react-native-animated-numbers


Unable to run LanguageBind/Video-LLaVA-7B-hf using ipex-llm

@songhappy / @shane-huang : Please could you share the code or steps how you ran LanguageBind/Video-LLaVA-7B-hf on IPEX-LLM few months back.
As we have a customer who wants to use video-llava running on Intel Arc GPU along with other computer vision model for providing what passenger is sitting,standing and other surrounding challeneges using LLM inside a autonomus Bus ride.
I am gettign issue running below code using ipex-llm:
(llm_vision) spandey2@imu-nex-nuc13x2-arc770-dut:~/LLM_Computer_Vision$ python test_llama_video_code.py Loading checkpoint shards: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 3/3 [00:01<00:00,  2.76it/s] Special tokens have been added in the vocabulary, make sure the associated word embeddings are fine-tuned or trained. /home/spandey2/miniconda3/envs/llm_vision/lib/python3.11/site-packages/transformers/feature_extraction_utils.py:141: UserWarning: Creating a tensor from a list of numpy.ndarrays is extremely slow. Please consider converting the list to a single numpy.ndarray with numpy.array() before converting to a tensor. (Triggered internally at /build/pytorch/torch/csrc/utils/tensor_new.cpp:261.)   return torch.tensor(value) Caught a runtime error during generation: Native API failed. Native API returns: -6 (PI_ERROR_OUT_OF_HOST_MEMORY) -6 (PI_ERROR_OUT_OF_HOST_MEMORY) (llm_vision) spandey2@imu-nex-nuc13x2-arc770-dut:~/LLM_Computer_Vision$
Code:
import av
import numpy as np
import torch
from transformers import VideoLlavaProcessor, VideoLlavaForConditionalGeneration, BitsAndBytesConfig
import intel_extension_for_pytorch as ipex

def read_video_pyav(container, indices):
    frames = []
    container.seek(0)
    start_index = indices[0]
    end_index = indices[-1]
    for i, frame in enumerate(container.decode(video=0)):
        if i > end_index:
            break
        if i >= start_index and i in indices:
            frames.append(frame)
    return np.stack([x.to_ndarray(format="rgb24") for x in frames])

# Initialize model and processor
model = VideoLlavaForConditionalGeneration.from_pretrained("LanguageBind/Video-LLaVA-7B-hf", torch_dtype=torch.float16)
processor = VideoLlavaProcessor.from_pretrained("LanguageBind/Video-LLaVA-7B-hf")

# Move model to XPU
model = model.to('xpu')

prompt = "USER: <video>Why is this video funny? ASSISTANT:"
video_path = "/home/xxxx/LLM_Computer_Vision/xxx_Demo_Video.mp4"
container = av.open(video_path)

# Sample uniformly 8 frames from the video
total_frames = container.streams.video[0].frames
indices = np.arange(0, total_frames, total_frames / 8).astype(int)
clip = read_video_pyav(container, indices)

inputs = processor(text=prompt, videos=clip, return_tensors="pt")

# Move inputs to the XPU
inputs = {k: v.to('xpu') for k, v in inputs.items()}

# Generate response with memory considerations
try:
    with torch.no_grad():
        generate_ids = model.generate(**inputs, max_length=80)
    result = processor.batch_decode(generate_ids, skip_special_tokens=True, clean_up_tokenization_spaces=False)[0]
    print(result)
except RuntimeError as e:
    print("Caught a runtime error during generation:", e)
except Exception as e:

As you have managed to run the videollava, few months back, please can you help me with the issue i am getting running on Intel Arc GPU 770

@shane-huang ; I have made progress on the running on Arc GPU, but it works on image only, not video, video i am getting OOM issue.
Please use this patch and steps and it works for image , not video on Arc GPU ?
https://github.com/intel-sandbox/llm-arc-flex/tree/main/video-llava


Relative protein circle sizing confusing to users

In our standard example of the hemoglobin the protein circles are much smaller than the triangles for the heme molecule which is biologically wrong so the relative sizing of the protein circles backfires. I know it was a bit of a pet-feature of Henning's but I'm still waiting to hear a user say they actually like the relative sizing. Once you open the bar it becomes obvious anyway how big the protein is and to be honest, no-one cares while they are looking at the topology!

seems like a fair point.
i'll make them all the same size

Thanks. We have at least one more test next Monday in case you have a new version by then.

Changed in MICommunity:master branch so that proteins always have same diameter.
(Sorry it wasn't in time for today's test.)


toggleHowler: don't mute if the prop has not changed

Hey guys,
when I was playing with react-howler and used fade feature from howler I found an undesirable side-effect that actually looks like a bug to me: howler's mute method causes any fading in progress to abort.
In its turn, react-howler calls mute on each possible props update, even when the mute param has not changed.
As a result, fade aborts immediately when any update happens.
This PR is intended to fix it.

Hi @svlapin,
Thanks for this and the explanation. Sorry for the delay. I think I understand what you're saying but could you provide a small code example just so I am clear on the scenario? I'd like to reproduce locally if possible.
I should be able to take a look at this over the weekend and also hopefully figure out why the Travis build started failing 🤔
Thanks!

Hey @Stenerson ,
sure, created an extra Fade example on the fade-example branch of my fork here: https://github.com/svlapin/react-howler/blob/feature/fade-example/examples/react/src/players/Fade.js
Steps to reproduce:

click Play
click Fade down

Expected result: music fades down smoothly and stops in 5 seconds
Actual result: music is muted immediately.
With the change I propose here it works as expected.
As for the failing build, looks like travis installs npm@6, which is not compatible with node@4 (https://github.com/npm/npm/issues/20425). So you might want to either use a previous version of npm in travis config, or drop node@4 from there at all. The latter makes more sense IMO as node@4 has reached end of life recently.


[Mac-SAFARI] Continuous Redirect is happening in Mac Safari with redirect flow in angular SPA

Core Library
MSAL.js v2 (@azure/msal-browser)
Core Library Version
2.18.0
Wrapper Library
MSAL Angular (@azure/msal-angular)
Wrapper Library Version
2.0.4
Description
After the token is acquired. It redirects again and again in loop while using msal-angular in Angular SPA.
Error Message
No response
Msal Logs
No response
MSAL Configuration
msalConfig: {
        auth: {
            clientId: '*******************',
            authority: 'https://login.microsoftonline.com/microsoft.com',
            redirectUri: `${location.origin}/iv`,
            postLogoutRedirectUri: `${location.origin}/iv/login`,
        },
        cache: {
            cacheLocation: 'localStorage',
            storeAuthStateInCookie: false,
        },
    },

Relevant Code Snippets
private handleUnAuthenticatedUser(observer: Observer<OAuthData>, resource: string): void {
        const redirectStartPage = window.location.href;
        this.msalBroadcastService.inProgress$
            .pipe(
                filter((status: InteractionStatus) => status === InteractionStatus.None),
            )
            .subscribe(() => {
                const activeAccount = this.msalService.instance.getActiveAccount();
                if (activeAccount) {
                    // If interaction got completed and in between Login is Successful then acquire token silently.
                    this.acquireTokenSilently(observer, resource, activeAccount);
                } else {
                    // If interaction got completed and still no account set then acquire token interactively.
                    this.msalService.acquireTokenRedirect({ scopes: [resource], redirectStartPage });
                }
            })
    }

Reproduction Steps

Go to root URL.
It will redirect (not visible though) to login.microsoft.online.com and get the /#code= in the url.
#code is removed from the URl and it again redirects get the code and same again on loop

Expected Behavior
It should redirect only once and then settle down.
Identity Provider
Azure AD / MSA
Browsers Affected (Select all that apply)
Safari
Regression
No response
Source
Internal (Microsoft)

@hitkumar25 Where is your handleUnAuthenticatedUser function being called? Please make sure you are not calling loginRedirect in your app.component.ts, and that redirects are being handled properly. Please see our FAQ and our redirect documentation for the appropriate way to use redirects.

I can confirm we are observing a similar or the same behavior and only on Safari and using msal-angular.


Add pip packege

Please, add new acpype package to pype. Thank you so much!
Regards,
Luciano

wheel published into pypi. thanks!


remove chrome web store script

What's changed, or what was fixed?

removes chrome web store script

Fixes: N/A
Target Live Date: 2018-08-17

[x] This has been reviewed and approved by @kaycebasques
[x] I have run npm test locally and all tests pass.
[x] I have added the appropriate type-something label.
[ ] I've staged the site and manually verified that my content displays correctly.

CC: @petele

Whoops!
There were 3 warnings that will prevent this PR from being merged. Please take a look, and either fix, or provide a justification for why they can't be fixed.
WARNINGS
src/content/en/tools/lighthouse/index.md#L137 - Common typo found: 'node' Should it be 'Node'?
src/content/en/tools/lighthouse/index.md#L138 - Common typo found: 'node' Should it be 'Node'?
src/content/en/tools/lighthouse/index.md#L5 - WF Tag 'wf_updated_on' must be within the last 7 days.

:tada: This has been pushed live to https://developers.google.com/web/


Input group size small

<InputGroup contiguous>
    <InputGroup.Section grow>
        <FormInput type="text" placeholder="Input group field" size="sm" />
    </InputGroup.Section>
    <InputGroup.Section>
        <Button size="sm">Button</Button>
    </InputGroup.Section>
</InputGroup>

@Guria thanks for the heads up

What browser/OS is this in?
Latest Chrome, Firefox, and IE10+ on Windows 7 machine looks good to me. (although contiguous does seem to work correctly on IE10)

@Guria having trouble reproducing this, would be great to get your system/browser details. Please note that Elemental supports:

Chrome (mobile and desktop)
Safari (mobile and desktop)
Firefox
Internet Explorer 10 and up

Resolved by 8e05148


Descriptive names for subscriptions

Checklist

[x] I've searched the issue queue to verify this is not a duplicate feature request.
[x] I've pasted the output of kargo version, if applicable.
[x] I've pasted logs, if applicable.

Proposed Feature
I would like to be able to give a name to subscriptions in a warehouse.
Today it look like this:

Motivation
This would allow them to be more descriptive and make more sense for none-technical folks.
Suggested Implementation

I agree. fwiw, it's the way it is because every Warehouse and Stage is a Kubernetes resource, which all naturally have names. Subscriptions are just details of a Warehouse, so they do not. Adding an optional name field seems like it would be a nice convenience. Thank you for this suggestion!

I would like to add to this a little bit.
Today there is only an icon that shows which subscription an artifact comes from in the freight timeline.  If there are two artifacts of the same type but from different subscriptions, that could be confusing and difficult to know what is changing.  I do know that tool tips can be used for this but it definitely could be more clear. If you do have a descriptive name for subscriptions I would like to see that name repeated in the freight timeline.
Alternately you could use a colored boarder or something to show which subscription each artifact came from.

or something like this could even work.

Or both?

No more colors...
We use colors already to indicate the flow of Freight through a pipeline (the Warehouse border and the connections between nodes) and we also use colors for each Stage so you can easily see what's running where...
And the palette of colors that is aesthetically pleasing AND easily distinguished from one another is limited to such an extent that colors already get reused more than we would like.
If we add colors to more things, it's going to become increasingly harder to see what's actually going on.

I hear that.. but something needs to tie those together.

Take this example.  What freight goes with which warehouse.  Which subscription matches with each artifact?

This is even worse because it doesn't even show all of the artifacts.

There's already a separate issue to color Freight borders with the Warehouse color. That's fine because it correlates one thing to something else that is already color-coded.

I have improvements that could resolve the subscription visibility issue. I agree with @krancour that colours are not solution rather it could lead to confusion.

Increase the Warehouse dropdown reachability. Right now it is far right side on screen but I think if we put it in left-most, the readability will increase.
Highlight the selected warehouse from dropdown (if selected individual). Right now if we select warehouse from dropdown, there is filter icon in the pipeline but I believe its not enough and needs more "highlight" design.
Re: When there are more freights, the box adds scrollbar that leaves last freight invisible at quick sight

Short term solution: Let the height flow naturally to fit all the freight in box
Long term solution: I would split the freight timeline into rows, each row will have distinct freights (1st row git, 2nd row images...). The column logically aligns the freight same as it is right now but splitting into row would open doors for flexibility for different choices of view like show only git or keep the container images in first row)

@Marvin9 mostly agree with everything, but have some skepticism about:

Long term solution: I would split the freight timeline into rows, each row will have distinct freights (1st row git, 2nd row images...). The column logically aligns the freight same as it is right now but splitting into row would open doors for flexibility for different choices of view like show only git or keep the container images in first row)

We've seen cases in the wild where Warehouses subscribe to lots of different repos. I don't necessarily think that's a good idea because it's naturally quite hard for humans to comprehend the sum total of what's in a piece of Freight when there are dozens of artifacts within... but this is a thing that some users are doing. With this in mind, a row per subscription in the Freight Timeline may eat up all vertical space in the viewport and then some.

Oh wait, I meant the same freight timeline view as it is now but just more connected dimensions (as of now its just freight box with freights), once we split into rows there will be common stretched box (say for same git hash for 3-4 consecutive freights). I will put some drawing


React to BuildTools change

This is a reaction to this change in BuildTools.

I'm going to merge this in before the builds run since the tests won't hit this path anyway.


No longer displaying working storage names in suggestion pop-ups

This was a change made in 2.1, here is the original request:
https://github.com/spgennard/vscode_cobol/issues/10#issuecomment-397339258
For some reason it does not seem to be working now. I am not sure in which version it stopped.
Thanks,
Andy

Can you be more specifc, it appears okay for me.

Test case:
000100 IDENTIFICATION DIVISION.                                         000100
000200 PROGRAM-ID. HELLO.                                               000101
0A0250* THIS IS A COMMENT LINE                                          000102
000300 PROCEDURE DIVISION.                                              000103
000350 A000-FIRST-PARA.                                                 000104
         *> Inline comment
      * no line number comment

* this line should also be a comment
 * this should not be a comment
  * or this
   * or this
    * or this
     * or thhis
      * this is okay

000400     DISPLAY "Coding Sheet"                                       000105
000500 STOP RUN.                                                        000106

* Line 20
*> Line 21

I believe this is fixed, can you please try again and re-open/open with an example it fails

Yes, it works perfectly. Thank you!


Command "corobo" not found if command not found

see https://github.com/errbotio/errbot/issues/1070


obtainProductInfo() returns empty list

I'm requesting product info and getting empty result.getProductInfoList():

In the logs i can see:

E/hms_pay: AgreementHelper    inconsistent countries -> signCountry = , currentCountry =

Here is the full log for "hms_pay" tag:
productinfo.txt.zip
Merchant service agreement is signed.
IAP service agreement is signed and IAP products are added in Huawei console.
IAP service API is enabled, Analytics service API is also enabled.
The test user is logged to Huawei account on the device and isEnvReady() and obtainOwnedPurchaseRecord() succeed.
Requested price type is set according to what is set in feature in the console (non_consumable).
What's wrong?
I'm sure i request for the right productID, but just out of curiosity i've also tried for inexisting productID and got the same "success" response.

Oh, just trying different options i was able to get it and it seems to be a bug.
I've added the product as non_consumable ("однократные"):

I've requested it as non_consumable:

request.setPriceType(IapClient.PriceType.IN_APP_NONCONSUMABLE);

And this results in empty list.
BUT if i request it as consumable:

request.setPriceType(IapClient.PriceType.IN_APP_CONSUMABLE);

i can get all the info:

Now the questions are:

"where is the bug?" (console UI, IAP SDK, server-side)

how to make it working now and don't break when you fix it?

Oh, just trying different options i was able to get it and it seems to be a bug.
I've added the product as non_consumable ("однократные"):

I've requested it as non_consumable:

request.setPriceType(IapClient.PriceType.IN_APP_NONCONSUMABLE);

And this results in empty list.
BUT if i request it as consumable:

request.setPriceType(IapClient.PriceType.IN_APP_CONSUMABLE);

i can get all the info:

Now the questions are:

"where is the bug?" (console UI, IAP SDK, server-side)

how to make it working now and don't break when you fix it?

I also have to set  request.setPriceType(IapClient.PriceType.IN_APP_CONSUMABLE); in  createPurchaseIntent()

I also have to set  request.setPriceType(IapClient.PriceType.IN_APP_CONSUMABLE); in  createPurchaseIntent()

I've read the explanation and it's very misleading translation to Russian which means quite the opposite.

I've read the explanation and it's very misleading translation to Russian which means quite the opposite.

I'm puzzed if you want to set your product non-consumable which means the user can buy the product once and own it forever, or you want to set your product consumable which means the user can buy the procuct multiple times.

I'm puzzed if you want to set your product non-consumable which means the user can buy the product once and own it forever, or you want to set your product consumable which means the user can buy the procuct multiple times.

@iap-git Thanks for the clarification. I clearly understand the meaning in English and i was confused with local translation in dev console UI when creating products.

@iap-git Thanks for the clarification. I clearly understand the meaning in English and i was confused with local translation in dev console UI when creating products.

Hi developer, thank you for your feedback. Now I get it.
When we describe Non-consumables (buy once, own forever) and Consumables (buy once, and need repurchase after being used up), we want to use Многоразовые and Одноразовые. Due to a mistake for which we failed to locate cause, Однократные and Многократные are incorrectly used on the console UI.
We’ll fix that in the next version. Sorry for the inconvenience caused.
Btw, which pair of translation do you think is the clearest for you guys?
A: однократные/многократные (current version, might be misleading)
B: одноразовые/многоразовые (suggested version, sound more like to use it once or for multiple times)
C: расходуемые/нерасходуемые
If i'm not mistaken, you want to provide a non-consumable product, so you need to choose 'многократные' in the console ui for now and  just request as you had posted before:
request.setPriceType(IapClient.PriceType.IN_APP_NONCONSUMABLE);
If you have any questions, please for free contact us.

Hi developer, thank you for your feedback. Now I get it.
When we describe Non-consumables (buy once, own forever) and Consumables (buy once, and need repurchase after being used up), we want to use Многоразовые and Одноразовые. Due to a mistake for which we failed to locate cause, Однократные and Многократные are incorrectly used on the console UI.
We’ll fix that in the next version. Sorry for the inconvenience caused.
Btw, which pair of translation do you think is the clearest for you guys?
A: однократные/многократные (current version, might be misleading)
B: одноразовые/многоразовые (suggested version, sound more like to use it once or for multiple times)
C: расходуемые/нерасходуемые
If i'm not mistaken, you want to provide a non-consumable product, so you need to choose 'многократные' in the console ui for now and  just request as you had posted before:
request.setPriceType(IapClient.PriceType.IN_APP_NONCONSUMABLE);
If you have any questions, please for free contact us.

It is still translate bug in console.

Well, wery misleading russian translation. I just configured all products as "многоразовые". I thought they are consumable, but they DON'T.
C: расходуемые/нерасходуемые would be better

Results i get
{"errMsg": "success", "productInfoList": [], "returnCode": 0, "status": {"describeContents": 0, "errorString": "success", "hasResolution": false, "hashCode": 947086020, "isCanceled": false, "isInterrupted": false, "isSuccess": true, "statusCode": 0, "statusMessage": "success"}}


Buttons do not work with Opera browser.

Pressing any button (sorting or yes/no) on the web interface returns an 'ERR_TOO_MANY_REDIRECTS' page when using Opera browser.
Edge browser is fine.

Pressing any button (sorting or yes/no) on the web interface returns an 'ERR_TOO_MANY_REDIRECTS' page when using Opera browser. Edge browser is fine.

I'm not sure it's WatchYourLAN problem. Just tried it in Opera browser and got no errors. Maybe there are other redirects like reverse proxy in your setup? Or it's something Windows is doing (I do not have Windows to test on it)


some memory created by "new" operator but not deleted

by the way, thanks for your awesome codes!

Hi @jacklone , thanks for reporting this issue, we will be checking it in the next few days.
Best


feat(config): support .config dir

Description

Resovles #15911
This PR is to demonstrate what .config directory support looks like, so that core team can discuss with working code.
@pi0
Would you check if it follows the convention correctly and add further explanation as needed?
By the way, I don't define /.config/vite.config.js, although it's written in #15911, because it's written in the original proposal that .config suffix should be avoided.

Thanks for creating the PR. I've discussed this with the team and is something we don't plan on supporting at the moment. https://github.com/vitejs/vite/issues/15911#issuecomment-2076259187


Countdown in 3.0 behaving erratic

Observed during convention. Hence the bad description:
Version is 3.0 Browser is Firefox
Up to three different Countdowns are used and displayed , only one is running down
Countdown should always  jump to negative times displayed in red, after running down
Observed Behaviour:
Countdown jumps to a starting value above the original setting, without apparent reason
(We're using Stopwatches on our smartphones now)

Cannot reproduce.
Having 5 different countdowns running like crazy works without flaw in my firefox
Please try to reproduce your issue on nightly and/or demo and try to describe your bug more detailed, preferably using the bug-report template.
Wild guess: It could be a server or setup-issue. The clients countdown-time-component simply listens to core/servertime. It does not have much own intelligence.
For instances hosted on the openslides-server, I can try to reproduce it locally.

Closed due to inactivity. Could not be reproduced


fix: remove --project-path argument from list-deployments command

Description of changes:
This PR removes the redundant --project-path CLI option from the list-deployments command.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

I believe the project path switch was added to all commands early on. We then moved away from needing it as we were simply listing the CF stacks. That is why it is of no use in the current state of the command.