TypeError: env.split is not a function

hi Rob,
I am using your repo as it with just whitelist added.  i have deployed it heroku as recommended.
`//var originBlacklist = parseEnvList(process.env.CORSANYWHERE_BLACKLIST);
var originWhitelist = parseEnvList(['https://goodsite.com', 'https://another.example.com','https://oh.example.com']);
function parseEnvList(env) {
if (!env) {
return [];
}
return env.split(',');
}
// Set up rate-limiting to avoid abuse of the public CORS Anywhere server.
var checkRateLimit = require('./lib/rate-limit')(process.env.CORSANYWHERE_RATELIMIT);
var cors_proxy = require('./lib/cors-anywhere');
cors_proxy.createServer({
// originBlacklist: originBlacklist,
originWhitelist: originWhitelist,`
my app keeps crashing and when i start the server locally i get the following error.
`
/home/sweethome/cors-anywhere/server.js:16
return env.split(',');
^
TypeError: env.split is not a function`
what am i doing wrong.

Use three backticks to format code blocks. Single backticks can only be used to format code on the same line.
var originWhitelist = parseEnvList(['https://goodsite.com', 'https://another.example.com','https://oh.example.com']);

function parseEnvList(env) {
  if (!env) {
    return [];
  }
  return env.split(',');
}

^ This code is problematic (and an error in your code, not in CORS Anywhere). parseEnv expects a string as input, but you're passing an array. Since you want to end up with an array of origins, just use the array instead of parseEnvList:
-var originWhitelist = parseEnvList(['https://goodsite.com', 'https://another.example.com','https://oh.example.com']);
+var originWhitelist = ['https://goodsite.com', 'https://another.example.com','https://oh.example.com'];

Use three backticks to format code blocks. Single backticks can only be used to format code on the same line.
var originWhitelist = parseEnvList(['https://goodsite.com', 'https://another.example.com','https://oh.example.com']);

function parseEnvList(env) {
  if (!env) {
    return [];
  }
  return env.split(',');
}

^ This code is problematic (and an error in your code, not in CORS Anywhere). parseEnv expects a string as input, but you're passing an array. Since you want to end up with an array of origins, just use the array instead of parseEnvList:
-var originWhitelist = parseEnvList(['https://goodsite.com', 'https://another.example.com','https://oh.example.com']);
+var originWhitelist = ['https://goodsite.com', 'https://another.example.com','https://oh.example.com'];

Hi Rob,
First and foremost, thank you so much for the wonderful CORS proxy. I figured it out and fixed and now the proxy is up and running in heroku. It is now all clear but initially i adverdantly misread that whitelist requires the list to be in an array. please refer example 2 and 3 under Server.
My requirements are very simple but everyone may not abe able to run a CORS server on the cloud for many reasons. Do you plan to run a public CORS server with a commercial interest.
second, can you eloberate a little bit more on the what happens under the hood when one uses ENV for the lists.
Thank you so much once again Rob.

Hi Rob,
First and foremost, thank you so much for the wonderful CORS proxy. I figured it out and fixed and now the proxy is up and running in heroku. It is now all clear but initially i adverdantly misread that whitelist requires the list to be in an array. please refer example 2 and 3 under Server.
My requirements are very simple but everyone may not abe able to run a CORS server on the cloud for many reasons. Do you plan to run a public CORS server with a commercial interest.
second, can you eloberate a little bit more on the what happens under the hood when one uses ENV for the lists.
Thank you so much once again Rob.

Do you plan to run a public CORS server with a commercial interest.

No, I am not interested. You can self-host if you need one.

second, can you eloberate a little bit more on the what happens under the hood when one uses ENV for the lists.

Read the code:

https://github.com/Rob--W/cors-anywhere/blob/528ad7109fa55bdde8055dd035bb16140a29c336/server.js#L6-L25
https://github.com/Rob--W/cors-anywhere/blob/528ad7109fa55bdde8055dd035bb16140a29c336/lib/cors-anywhere.js#L261-L262
or the documentation: https://github.com/Rob--W/cors-anywhere/blob/528ad7109fa55bdde8055dd035bb16140a29c336/README.md#server

Do you plan to run a public CORS server with a commercial interest.

No, I am not interested. You can self-host if you need one.

second, can you eloberate a little bit more on the what happens under the hood when one uses ENV for the lists.

Read the code:

https://github.com/Rob--W/cors-anywhere/blob/528ad7109fa55bdde8055dd035bb16140a29c336/server.js#L6-L25
https://github.com/Rob--W/cors-anywhere/blob/528ad7109fa55bdde8055dd035bb16140a29c336/lib/cors-anywhere.js#L261-L262
or the documentation: https://github.com/Rob--W/cors-anywhere/blob/528ad7109fa55bdde8055dd035bb16140a29c336/README.md#server

hi Rob,
on commercial interest, i was just saying, if it did not occur to your mind. if so many people were abusing your heroku offerring, th demand should me more. thats what struck me.
on self hosting, as mentioned earlier, yes, i am running a git clone of yours on heroku on minor tweak on the whitelist.
there was no problem on the ENV list for me to report, just there was no file for me to see what is being obtained. being a total noobie to JS world, that kind was weird for me.
i will thank you on every opportunity. here is one. Thank you so much Rob. Wish you a great year ahead.

hi Rob,
on commercial interest, i was just saying, if it did not occur to your mind. if so many people were abusing your heroku offerring, th demand should me more. thats what struck me.
on self hosting, as mentioned earlier, yes, i am running a git clone of yours on heroku on minor tweak on the whitelist.
there was no problem on the ENV list for me to report, just there was no file for me to see what is being obtained. being a total noobie to JS world, that kind was weird for me.
i will thank you on every opportunity. here is one. Thank you so much Rob. Wish you a great year ahead.


Variables in text boxes do not get replaced

Originally posted by @t-oster in https://github.com/thombergs/docx-stamper/issues/97#issuecomment-1255465475

I created a new pull request to show you how I had approached this issue.
https://github.com/verronpro/docx-stamper/pull/48
As you can see there is actually less code in the new branch. I have got rid of some of the co-ordinates stuff, which I don't believe we need.


RFC: add support for creating project builds which do not include runtime assertions

Checklist

Please ensure the following tasks are completed before submitting a feature request.

[x] Read and understood the Code of Conduct.
[x] Searched for existing issues and pull requests.
[x] The issue name begins with RFC:.

Description

Description of the feature request.

This RFC proposes adding support for creating project builds (most likely "bundles" for use in browser environments) which do not include runtime assertions. Situations where such a build would be beneficial:

Runtime performance is critical. For example, a high-performance application such as a game.
Build (bundle) size is critical. For example, using a library on a mobile device with slow download speeds (high network costs).

In general, runtime assertions should be the default. Their importance in development, testing, and scripting cannot be overstated. However, in certain situations, such as heavily tested applications, removing runtime assertions can be considered permitted and can be beneficial in order to achieve marginal gains in ops/sec.
This RFC proposes to explore

the feasibility of creating such builds
how the process of creating such builds would work
the requisite tooling involved
whether modifications would be required of source implementations

Of note, naive approaches such as, e.g., swapping assertion functions with no-op functions are not feasible due to the variety of uses for assertion functionality (both positive and negative conditionals). However, other, more nuanced (and careful), approaches may be more feasible. For example,

Static analysis of source code. Presumably, any conditional (i.e., if/else) containing an assertion (e.g., isString()) and whose body only contains a thrown error purely serves as a runtime assertion for invalid input or some other invalid condition. And presumably, for valid inputs, removing the conditional (and thus the assertion) would not affect the runtime behavior of an implementation. Some edge cases may exist and ascertaining whether such edge cases do, in fact, exist warrants further research.

Source code annotations. Perhaps a more explicit approach is to label assertions with, e.g., a comment indicating that they can be "safely" removed in a build omitting runtime assertions. For example,
function foo( x, y ) {
    if ( x !== x ) { /* stdlib:assertion */
        throw new TypeError( 'invalid argument. First argument cannot be `NaN`.' );
    }
    // ...
}

Tooling could then scan the source code for the labels and remove AST nodes containing the assertions, thus generating a build which omits runtime assertions. Obviously, the drawback here is that source code would need to be "retrofitted" with such annotations, but, then again, it would allow the project to gradually "opt-in" over time, as more of the project is annotated.

In order to test that runtime behavior is not affected by assertion removal, unit tests should be run over generated builds. However, one will not be able to run the unit tests as is, due to the presence of tests which verify runtime assertion behavior. For testing a generated build, assertion behavior tests must be either disabled or removed altogether.
One possible mechanism for disabling assertion behavior unit tests is via an environment variable, e.g., STDLIB_RUNTIME_ASSERTIONS={0,1}. Then, in unit test files,
var opts = {
    'skip': env.STDLIB_RUNTIME_ASSERTIONS === 1
};

Related Issues

Does this feature request have any related issues?

No.
Questions

Any questions for reviewers?

No.
Other

Any other information relevant to this feature request? This may include screenshots, references, sample output, and/or implementation notes.

No.

Too much automation seems risky. It seems nearly unavoidable to require a possibly-comment-annotation-based approach anyway.
What do you think of the browserify/envify/uglify approach of process.env substitutions that result in very naively statically analyzable code (e.g if ("foo" === "bar") { ... })? Of course it seems undesirable to couple assertion removal to the build process, but maybe it's not too undesirable to reinvent the wheel a bit to avoid coupling this approach to the build process. Unfortunately that seems to result in custom build tools you'd need to run, but I can imagine that either being exposed as browserify transforms and webpack loaders or just being done internally by rollup, for example, to produce a checked and unchecked dist version.
One note I'll add is that regl adds some custom magic to thread the needle and try to select the best options, but it's been met with a bit of consternation when people realize what's really going on and that it doesn't follow a more predictable pattern. Of course there are Reasons, but since people will no doubt, frankly, probably, often be looking to bundle stdlib via webpack (and its yet-unborn descendants), it's worth considering how people will be looking to bundle the code and whether the dev process is reasonable. Which probably means dist/stdlib-unchecked.min.js and dist/stdlib.min.js or something, as well as exposing some tools to produce your own checked/unchecked bundle in realistic use-cases.

Summarizing more succinctly: this is a user-facing concern so that I think it's more important to consider what end-users need to do to take advantage of it rather than what internal developers need to do to accomplish it (though this should of course be simple and reasonable).


vendor: Update longhorn/sparse-tools

longhorn/longhorn#2416

Regression test: https://ci.longhorn.io/job/private/job/longhorn-tests-regression/


Switch kube-proxy to use stage1-coreos when rkt supports privileged better

Right now we use stage1-fly, eventually rkt should support it using stage1-coreos by redefining how a privileged pod is run.

related: https://github.com/coreos/rkt/pull/2983


Request / fix

Can you add conversation history like on chatgpt?
Elimination (single chat)
Confirm deletion of all chats (Then add a SQL database to store the chats)
The chat is automatically named as on chatgpt
Add the new GPT-4 models to me I need from 32K tokens
they gave me the permission that i can use gpt-4 via API
Adding a previous text change like on chatgpt
and improve the speed.. I noticed that it goes slow when doing the LiveType I hope that fixes it
another problem I noticed that when generating a code the box to copy it is not generated immediately but at the end
I like this project

Hi Jordon, about your questions:

About conversation history: Yeah, I did think about this since planning steps, but this was a course project with limited times about 2 weeks, so I have to start with single-chat first, to make sure I can keep up with the deadlines. I will add this feature to the roadmap for implementation 👌.
Confirm deletion of all chats: This is already implemented as the Clear button, which purges all the persisted data on the local storage.
Upload conversation to SQL database: I decided not to add a database layer to the stack because I want this project as simple as possible.

I think allowing the user to export the conversation to local files is a good temporary solution now, as the user can upload it as a training convo.

GPT-4: As the response format is not changed, I will add gpt4 models on the next maintenance. It might require some modification since the price is changed for both prompt and completion.
Typing speed: The typing effect is just for "simulating" Chat GPT or removing unwanted content, the speed is configurable. I have set it to about 100ms, but I think it is quite slow too 😅.
Copy code problem: Hm, I don't understand your question, since the code highlighting is only rendered after the typing is finished. I have also tested it, and it seems to work fine.

Thanks for your compliment, I am glad that you like it 🥰.

Hi..
Thanks for the replies
The evidence of the code is it possible to make it start from the beginning? and not in the end
I changed the "typeSpeed" to 10 ms.. sometimes it doesn't respond anymore and sometimes it takes a long time to process the response
And if you want to put the conversion history will you do via json file?
Thanks.

I forgot to mention that the response may be slowed when the Open AI API is in high traffic. This behavior is the same as the ChatGPT.
About the response that doesn't respond anymore, the app will silently retry 3 times, with exponential backoff delay, so maybe the response from the server was discarded as it took too long. You can click the Regenerate response button to regenerate the completion. Currently, I think I will increase the retry times to catch the delayed responses.
About conversation history, I tried to implement this feature lately, and I rewrote the redux structure and stuff but it is not so good. I'm trying to "normalize" the data as below:

Example data
{
  convo: {
    ids: ['yB4NANXSYSrWge-Y9kKas', 'dWE4MXZyUerlEMpiaj0v2'],
    entities: {
      'yB4NANXSYSrWge-Y9kKas': {
        chatId: 'M31vCF6Y043IcYkeG5AsS',
        role: 'user',
        content: 'd',
        isTyping: false,
        id: 'yB4NANXSYSrWge-Y9kKas',
      },
      dWE4MXZyUerlEMpiaj0v2: {
        id: 'dWE4MXZyUerlEMpiaj0v2',
        object: 'chat.completion',
        created:<PHONE_NUMBER>,
        model: 'gpt-3.5-turbo',
        usage: {
          prompt_tokens: 56,
          completion_tokens: 31,
          total_tokens: 87,
        },
        choices: [
          {
            message: {
              role: 'assistant',
              content: 'Foo',
            },
            finish_reason: 'stop',
            index: 0,
          },
        ],
        chatId: 'M31vCF6Y043IcYkeG5AsS',
        role: 'assistant',
        content: 'Foo',
        isTyping: false,
      },
    },
  },
  model: {
    name: 'gpt-3.5-turbo',
    price: {
      prompt: 0.0002,
      completion: 0.0002,
    },
    per: 1000,
  },
  history: {
    ids: ['M31vCF6Y043IcYkeG5AsS'],
    entities: {
      M31vCF6Y043IcYkeG5AsS: {
        id: 'M31vCF6Y043IcYkeG5AsS',
        title: 'New Chat',
        completion_tokens: 0,
        prompt_tokens: 0,
        total_tokens: 0,
      },
    },
  },
  _persist: {
    version: -1,
    rehydrated: true,
  },
}

I'm currently stuck distributing the history id to the chat toolbar from the header and the chat. I think I will move the chat toolbar to the chat later.
About your idea of reading the conversation from a file, I will add it to the roadmap 👌.


Auth POST requires a supplied device token

I found this out when my app crashed today. Found this thread on Stack Overflow and made the adjustments.
You need to view source code when logged in to the web version of Robinhood.
https://stackoverflow.com/questions/55902967/is-there-any-way-to-get-a-bearer-token-now-since-robinhood-has-changed-the-api/55941425#55941425

Your PR changes the indentation for the whole file from tabs to 2 spaces, which makes it difficult to see what actually changed. There is an .editorconfig file that tells the IDEs / Text Editor how to format certain files. If you use something like VSCode, Sublime, Atom, WebStorm or others, you can find extensions / plugins to support editorconfig files.

Merged in #34


国外文凭办理精英国际文凭俱乐部

[uninspired spam message removed by @masak]

@ghvfsdasdu Don't post spam. Next time I see you do it, I will report you.


[HOLD for payment 2023-12-06] [$500] Assign Task - The app crashes when canceling a task in offline mode

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 1.4.1-4
Reproducible in staging?: Y
Reproducible in production?: Y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
Action Performed:
Pre-condition: In LHN task received on previous date with green dot is required

Launch app
Tap on profile---Preferences
Toggle on forced offline
Navigaye to LHN
Tap on task received on previous dates with greet dot
Tap on 3 dots on top right
Tap cancel

Expected Result:
PAs receiver of task login and cancel task in offline, app must not crash
Actual Result:
The app crashes when canceling a task in offline mode
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

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

Screenshots/Videos
Add any screenshot/video evidence

https://github.com/Expensify/App/assets/78819774/3e27e0c0-bc67-40ab-9bb8-85a32a8e7e5e
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01a371f1783ea64c60
Upwork Job ID:<PHONE_NUMBER>226061824
Last Price Increase: 2023-11-20
Automatic offers:

abzokhattab | Contributor | 27770841

Proposal from @abzokhattab looks good to me https://github.com/Expensify/App/issues/31587#issuecomment-1819893376
We should just fix correct usage for lastVisibleActionCreated
Based on this PR https://github.com/Expensify/App/pull/28570/files - we already moved away from returning {} (which will break TS paradigm for that function and may lead to more regressions @dukenv0307 based on your suggestion)
Problem also was not discovered before because not everything are in TS. That's why error was not caught.
Also my suggestion will be to add more unit test here tests/unit/ReportActionsUtilsTest.js for getLastVisibleAction function
🎀 👀 🎀 C+ reviewed

The PR is ready

@narefyev91 please complete the checklist :)

The PR that introduced the bug has been identified. Link to the PR - was not coming from regression - just missing additional check to prevent crash
The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake. Link to comment - N/A
A discussion in #expensify-bugs has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion - N/A
Determine if we should create a regression test for this bug - N/A

Thanks!


swagger generate client fails on validated swagger.json

Problem
swagger generate client wont build a client on a validated swagger.json
Swagger specification
https://esi.tech.ccp.is/latest/swagger.json
Steps to reproduce
swagger validate https://esi.tech.ccp.is/latest/swagger.json
The swagger spec at "https://esi.tech.ccp.is/latest/swagger.json" is valid against swagger specification 2.0
swagger generate client -f https://esi.tech.ccp.is/latest/swagger.json -A esi
2016/11/11 13:04:03 building a plan for generation
2016/11/11 13:04:04 planning definitions
2016/11/11 13:04:04 planning operations
object has no key "GetCharactersCharacterIDMailOKBodyItems0"

seems like its some sort of formatting error
##Steps to reproduce
loaded https://esi.tech.ccp.is/latest/swagger.json?datasource=tranquility into http://editor.swagger.io/#/
generated a client swagger.json
swagger generate client -f ./swagger.json -A esi
executed sucessfully

I can reproduce the error you see in your spec, just haven't found the cause for it yet.
Golang never orders map keys the same way twice so that makes it so that that very sometimes it succeeds but more often than that it fails.

the swagger.json that is generated with the client sdk of http://editor.swagger.io/#/ is actually a different one than the original.
i think it only puts client stuff in there.
maybe is helps if you compare the original from https://esi.tech.ccp.is/latest/swagger.json?datasource=tranquility and the one that is generated with http://editor.swagger.io/#/


Emagged Chem Dispenser has Water and Welding Fuel

About the PR
This addition makes Emagging a chem Dispenser more useful. As it is, the only item in the Emagged Chem Dispenser that is truly useful is the Epinephrine and ultravasculine as the other items can be substituted easily.  The addition of water and Welding Fuel makes them more useful to a chemist as it unlocks the easy ability to make potassium bombs as well as unlocks the advanced chems that normally need welding fuel and water.
Changelog
🆑 Added Water and WeldingFuel to Emagged Chemical Dispensers

I don't think this belongs on upstream ss14. Why would you make it even easier for antag chemists.
Also adding things to emags is a no from me imo.

No.


Allow .input-groups without addons.

Under some circumstances, for example when dynamically generating content, it is helpful to have all your inputs formatted the same way. This commit allows only child inputs inside an .input-group to behave as they would not in an .input-group.

I feel like these isn't something we need to address ourselves—either you need an input with an addon, or you don't. Do you have an example of this in action? Seems like you'd be requiring extra markup for little benefit here.

The reason this is helpful for me, and others, is I am building a page dynamically with Javascript and at times adding, removing, or altering addons to inputs. It's a lot simpler to be able to do this without having to check for and add the input-group wrapper around the input first. It is on an embedded system so I unfortunately cannot easily show an example of the usage.
The other thing is when I first saw that the input didn't work properly in an input-group without an addon I just simply thought it was a bug how the input was malformed.
In reality, as long as this addition doesn't cause any other issues, it's only a tiny addition that would make inputs and .input-groups function a lot more consistently and I think that is worth the addition.

The selector changes are fine I think—not an issue for IE8 since there are no rounded corners there anyway—but we'll need to test that width: 100% change. Can you check input groups in inline forms, navbars, etc?

You were right to suspect the width: 100% of causing an issue, it does.
It is only even needed in very specific circumstances, depending on what the .input-group has for a parent. Inside a row the width:100% does nothing, inside an inline form it causing an issue, however if the .input-group is just in the body tag or a .container it needs the width:100%.
I will look for a better way to do it.

I added a simple fix that now correctly displays .input-groups in inline forms, navbars, and anywhere else I could think to test.

I think for the time being I'm going to punt on this. It's not a huge improvement for us, though I totally understand the sentiment. I'd be fine revisiting come v4 though.


Error "missing authentication credentials for REST request"

Hi,
I'm using version v7.13.0 with Elastic Cloud and having an issue trying to execute a search.
I'm getting this error:
[401 Unauthorized] {"error":{"root_cause":[{"type":"security_exception","reason":"missing authentication credentials for REST request [/logstash-*/_search]","header":{"WWW-Authenticate":["Basic realm=\"security\" charset=\"UTF-8\"","Bearer realm=\"security\"","ApiKey"]}}],"type":"security_exception","reason":"missing authentication credentials for REST request [/logstash-*/_search]","header":{"WWW-Authenticate":["Basic realm=\"security\" charset=\"UTF-8\"","Bearer realm=\"security\"","ApiKey"]}},"status":401} <nil>

This is how the client config looks like:
	cfg := elasticsearch.Config{
		CloudID: "MY_CLOUD_ID",
		APIKey:  "MY_API_KEY",
		Logger: &estransport.ColorLogger{
			Output:             os.Stdout,
			EnableRequestBody:  true,
			EnableResponseBody: true,
		},
	}
	client, err := elasticsearch.NewClient(cfg)

Debugging the code, I can see that the Authorization header is added to the request by the transport: "ApiKey MY_API_KEY"
What am I missing?

Hi @susana-garcia
How did you create the API Key ?
Can you check the API key has the proper rights to access the cluster ?
As far as code goes, this is the way it works so you didn't miss anything on that front.

hi @Anaethelion
I created the API Key following these steps: https://www.elastic.co/guide/en/cloud/current/ec-api-authentication.html
But I ended up using user/password instead of the API Key.
Cheers

Ok that explains why the client was throwing 401 status codes.
This API key is for the Elastic Cloud operations such as deployments or autoscaling.
For the client you can generate an API key for your Elasticsearch cluster via Kibana in the API Keys page which can be found in Manage > Security.
Hope this helps !

oh, that makes perfect sense, thank you so much for your answer. I'll try it 👍
cheers!

and it worked just fine, thanks again!


1803 Version Support

When will version 1803 be supported?

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

ID: 29295bfb-4d36-07cc-4e47-29835aa835ec
Version Independent ID: 618170e7-cc5c-2ff8-af3b-701c1b26ed11
Content: What type of installation is right for you
Content Source: WindowsServerDocs/manage/windows-admin-center/plan/installation-options.md
Product: windows-server-threshold
GitHub Login: @nwashburn-ms
Microsoft Alias: niwashbu

Installation on Windows 10 1803 is supported, we will update the documentation.

The documentation has been updated to clarify that Windows Admin Center can be installed on Windows 10 version 1709 or newer.

Is windows server 1803 supported? Thanks

@christianacca yes Windows Server version 1803 is supported- thanks for catching that it's not listed. We will update the documentation.

Is Server 2016 1607 supported for install?

As long as it's not Nanoserver, installation on Windows Server 2016 is supported.


Fixed IE 10 layout bug

The content list on IE10 was not expanding to fill 100% height when this component was used inside of the react-step-wizard component

FYI this also fixed the IE9 display issues


Update Controller to allow extension in handleAction()

Controller's parent class (RequestHandler) has two extensions in its handleAction() method that are obscured by Controller's implementation.
There are many reasons to hook into action, custom logging being the most obvious.

Fixed in the 3.* line. (3.2)


Embedding monad transformers in carrier stacks is fiddly

It’s tricky to define Carriers which embed non-Carrier monad transformers, and even more so if these exist within other embedded carriers. E.g.
newtype REPLC cmd m a = REPLC { runREPLC :: ReaderC (Parser (Maybe cmd)) (ReaderC Line (InputT m)) a }
  deriving (Applicative, Functor, Monad, MonadIO)

The Carrier instance has to lift InputT expressions through two ReaderCs, which don’t have MonadTrans instances:
str <- ReaderC (const (ReaderC (const (getInputLine (cyan <> prompt <> plain)))))

and lifting computations inside the InputT requires even deeper nesting:
res <- ReaderC (const (ReaderC (const (lift (runError (traverse (parseString (whole c) (lineDelta l)) str))))))

Running higher-order effects is even worse, requiring joins and lifts and more manual construction of ReaderCs.

I think this can be addressed by two additions to the lib:

MonadTrans instances for all the relevant carriers. Almost all of these are pretty trivial, or at least will be once #114 is in.

A generic Carrier wrapper for MonadTrans instances, e.g.:
newtype TransC t (m :: * -> *) a = TransC { runTransC :: t m a }
  deriving (Applicative, Functor, Monad, MonadIO, MonadTrans)

instance (Carrier sig m, Effect sig, Monad (t m), MonadTrans t) => Carrier sig (TransC t m) where
  eff = TransC . join . lift . eff . handle (pure ()) (pure . (runTransC =<<))

I think MonadTrans instances will suffice for 0.3; TransC can be defined by users of the lib, whereas (non-orphan) MonadTrans instances cannot.


Calendar blackout dates style bug when in Transitioner

When using a calendar within a transitioner the blacked out dates do not show as faded, they do however show the correct hover icon and cannot be selected.
When navigating forwards then back it resolves itself
When navigating back it is harder to explain and best seen, if the date range is only a couple of days then it will resolve it, if you have used
Calendar.BlackoutDates.AddDatesInPast();
it will still not black out the dates from the current month that should have been, but it will grey out the other dates, so it looks half and half if you where doing it on the 15th for example
demo repo https://github.com/rrs/MaterialDesignCalendarBug

@rss There is a bug fix for issue #605 (appears to potentially be related) that is scheduled to be in the next release. Would you mind testing with the latest code on master to see if this still reproduces?

Ah, shame on my issue searching skills, i was focusing on the calendar and transitioner aspect. That does fix it. I'll remember to test with master as a matter of course next time. Thanks

No problem, glad it is fixed :).


ripple effect on click

Is there any plans to add the "ripple" click effect on each control? (or at least the button)
I'm jealous that almost every other material ui library has it (MaterialDesignInXaml, material-ui, etc.) and we don't.

Ripple effect is used in Material design, not in Metro (AFAIK).


The Market Plugin is missing

I would like to use this plugin, but haven't way to add this plugin in my project.
I tried using
ionic plugin add xmartlabs-cordova-plugin-market
But this plugin ins't in ionic-native module folder

Looking at the source of the wrapper of the Market  plugin in the ionic-native repo you can find out that it uses the cordova-plugin-market plugin. Which you can install directly from it's repo as
ionic plugin add https://github.com/xmartlabs/cordova-plugin-market --save

or you can install it from npm with the following name:
ionic plugin add cordova-plugin-market --save

Also it is available on NPM: https://www.npmjs.com/package/cordova-plugin-market 🙂

Ignore my comment: I have just seen your last note sorry!

I'll shoot @mhartington a message and ask him to update this. He has been making some great improvements to the Native docs recently.
Thanks,
Dan

The PR has been already merged. Do you generate the docs automatically?

Yes. Looks like it hasn't been deployed to staging yet, though.
http://ionic-site-staging.herokuapp.com/docs/v2/native/market/
Thanks,
Dan

Problem docs publication in site current 1.3.10 related issue Ionic SIte lots issue are opened

Hello all, the docs are now updated! Thanks for using Ionic!


remove the numpy pin from host as requested

Checklist

[ ] Used a personal fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe/meta.yaml) and found it was in an excellent condition.

You also need to rerender here to get the right pin.

@conda-forge-admin, please rerender


fix: dev: Setting proper bash default shell for hosts.

I think this should put a band-aid to fix the issue #45. @jeffesquivels suggested a smarter approach that sets the default shell depending on the value of the default_category set for the particular node. @carlos-jenkins, comments on this?
Please do not merge until you have posted your opinion on this pull request.

@ocelotl yes, that was basically it.
Please merge it.
Regards.


Tourists still show pocket cars

When tourists are leaving my city i often see them driving to my trainstation, put their car in their pocket and leave the city.

Well perhaps not fix this, but perhaps we can think of a way to control the spawning of the pocket cars, so we can get those car rental assets functional :-)

At this place near the airport, they only spawn cars here to leave the city.
Perhaps it would be cool to allow tourists to spawn cars near their entry point on open parking spaces to enter the city, they must return the car when they want to leave the city.


SUGGESTION, to add fake faceit level, or to add fake prime on OSIRIS

i'd like to add fake faceit level for community servers, or to add fake prime to work not only in lobby but just on community servers, this can be useful :V

community faceit levels are based on
CCSPlayerResource->m_nPersonaDataPublicLevel (levels) or
CCSPlayerResource->m_iCompetitiveWins (ranks)
community plugins just set these netvars to high VALUEs, then CS:GO looks for files called:
skillgroupVALUE.svg ex.(skillgroup500.svg) for ranks in (csgo\materials\panorama\images\icons\skillgroups)
levelVALUE.png ex.(level1201.png) for levels in (csgo\materials\panorama\images\icons\xp)
This is client only change and will not be visible for other playes. Simillar with prime

community faceit levels are based on CCSPlayerResource->m_nPersonaDataPublicLevel (levels) or CCSPlayerResource->m_iCompetitiveWins (ranks)
community plugins just set these netvars to high VALUEs, then CS:GO looks for files called: skillgroupVALUE.svg ex.(skillgroup500.svg) for ranks in (csgo\materials\panorama\images\icons\skillgroups) levelVALUE.png ex.(level1201.png) for levels in (csgo\materials\panorama\images\icons\xp)
This is client only change and will not be visible for other playes. Simillar with prime

If i add 10 years veteran coin, will it display in gameplay, coz in lobby i know, and it's works, but how about in gameplay

no, its only visible for you on the scoreboard

no reason, its client side.

this cheat works on faceit for u? if so, how, mine gives an error,


Encrypted zprofile makefile fix

Current Changes include:

go-cty/cty - stable release from latest -> 1.9.1

Changes in developer/Makefile.
Changes in the Readme.md

Sample configuration for z profile - w/o a provisioner.
Sample configuration for encrypted-centos.
Checks for resource availability.

Could you please make sure all the checks pass. Also the variables.pkvars.hcl shows This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Please fix issues

@juanpinzon working on it.

Will be creating a newer PR.


Enable features depends on dbt-compile to pass some parameters like profile, target, vars, ...

Describe the feature
Allow some features run dbt-compile (e.g. compiled sql preview, lineage) to specify some additional parameters (I want specifying profile, target and vars)
Describe alternatives you've considered
No response
Who will benefit?
Who has a complicated dbt project.
In my project, actually, it requires specifying profile, target and vars explicitly, so some features don't work on my environment.
Are you willing to submit PR?

[X] Yes I am willing to submit a PR!

Resolved by https://github.com/AltimateAI/vscode-dbt-power-user/pull/1353


Weird output when model is involved in a function call with an incorrect argument signature

Not sure where the LessEqual comparison would be attempted by Mathematica. This weird output is very annoying and distracts from the actual error message.

This is fixed in branch https://github.com/opencobra/MASS-Toolbox/pull/39


Include the right package

In documentation page https://docs.microsoft.com/en-us/azure/service-bus-messaging/service-bus-php-how-to-use-queues
You are using WindowsAzure\Common\* libraries which are parts from microsoft/windowsazure package.

@Klamius : Thanks for your contribution! The author, @, has been notified to review your proposed change.

@tamram - could you help route this issue ? It seems ServiceBus is relying on some types from the Storage SDK but the document is using a very outdated version (it was Preview) which we no longer support. Could the author please update the document to use the latest GA Storage SDK ? This PR is still trying to reference an early version that is no longer supported.

For reference, latest GA packages are described here: https://github.com/Azure/azure-storage-php

@spelluru - This PR is for a service bus article, not Azure Storage. @seguler pointed to the Azure Storage packages, but we would prefer that you (as the author of the articles containing the include file) review this.
@tysonn - FYI

@spelluru - Do you plan to do the update work in the private repo? Shall we close this pull request or keep it open? Thanks.

@ktoliver - Yes. That's what I am planning to do. I will get help with updating the article and testing out the steps. Thanks.

@spelluru Thanks for confirming. We'll close this PR, then.


Typing block causes Type instantiation issue

Hey,
Nice work on that library.
This might be related to #335 or #244
When trying to define this schema
import { ImagesIcon } from "@sanity/icons";
//import { defineArrayMember, defineField, defineType } from "sanity";
import {
  defineArrayMember,
  defineField,
  defineType,
} from "@sanity-typed/types";

const SEASONLIST = [
  { title: "Hiver", value: "winter" },
  { title: "Printemps", value: "spring" },
  { title: "Été", value: "summer" },
  { title: "Automne", value: "autumn" },
];

export default defineType({
  type: "document",
  name: "artwork",
  title: "Œuvre",
  icon: ImagesIcon,
  fields: [
    defineField({
      type: "string",
      name: "title",
      title: "Titre",
      validation: (rule) => rule.required(),
    }),
    defineField({
      type: "slug",
      name: "slug",
      title: "Slug",
      options: {
        source: "title",
      },
      validation: (rule) => rule.required(),
    }),
    defineField({
      name: "image",
      title: "Image",
      type: "image",
      validation: (rule) => rule.required(),
    }),
    defineField({
      name: "overview",
      title: "Description",
      type: "array",
      of: [
        // Paragraphs
        defineArrayMember({
          lists: [],
          marks: {
            annotations: [],
            decorators: [
              {
                title: "Italic",
                value: "em",
              },
              {
                title: "Strong",
                value: "strong",
              },
            ],
          },
          styles: [],
          type: "block",
        }),
      ],
    }),
    defineField({
      name: "category",
      title: "Categorie",
      type: "reference",
      to: [{ type: "category" as const }],
      validation: (rule) => rule.required(),
    }),
    defineField({
      type: "string",
      name: "type",
      title: "Type",
      validation: (rule) => rule.required(),
    }),
    defineField({
      type: "string",
      name: "season",
      title: "Saison",
      options: {
        list: SEASONLIST, // <-- predefined values
        layout: "radio", // <-- defaults to 'dropdown'
        direction: "horizontal",
      },
      validation: (rule) => rule.required(),
    }),
    defineField({
      title: "Année",
      name: "year",
      type: "string",
      initialValue: () => new Date().getFullYear().toString(),
      validation: (rule) =>
        rule
          .required()
          .length(4)
          .regex(/^[0-9]*$/)
          .error(
            "Doit être au format: 2021, 4 caractères, uniquement des chiffres"
          ),
    }),
  ],
  preview: {
    select: {
      title: "title",
      media: "image",
      category: "category.title",
      season: "season",
      year: "year",
    },
    prepare({
      title,
      media,
      category,
      season,
      year,
    }: {
      title: string;
      media: string;
      category: string;
      season: string;
      year: string;
    }) {
      return {
        subtitle: `${category} - ${SEASONLIST.flatMap((option) =>
          option.value === season ? [option.title] : []
        )} ${year}`,
        title,
        media,
      };
    },
  },
});

I hit, 'Type instantiation is excessively deep and possibly infinite.' Error(TS2589).
So I can't figure out where my issue is.
Do you have any idea on how to fix this ?
Thanks

Looks similar to #299, which was solved by #303. That same solution doesn't seem to apply, so will have to dig in. I have a test written in #420, can start working from there. Feel free to contribute as well!

Hmm, just started looking to upgrade our @sanity-typed stuff, but ran into this as well.
Where would be a good place to start poking around? My thought is to start trying to tease out where block is self referencing?

Hmm, so it is breaking between 4.1.2 and 4.1.3 for me: https://github.com/saiichihashimoto/sanity-typed/compare/%40sanity-typed/types%404.1.2...%40sanity-typed/types%404.1.3

I have exactly the same right now using this in an Astro project. Would love to get a pointer for how to fix this? Do I need to have a look into my schema or is this something related to the plugin?
export async function getSiteSettings() {
  const currentTime = Date.now();

  // @ts-ignore
  if (cache && cacheTimestamp && currentTime - cacheTimestamp < CACHE_TTL) {
    return cache;
  }

  // @ts-ignore
  cache = await client.fetch(`*[_type == "settings" ][0] {
        "footer": {
          footerMenuContent,
          "block1": {
            "title": blockTitle1,
            "menu": blockMenu1->{
              ...,
              items[] {
                ${LINKS}
                },
              },
          },
          "block2": {
            "title": blockTitle2,
            "menu": blockMenu2->{
              ...,
              items[] {
                ${LINKS}
                },
              },
          },
          "block3": {
            "title": blockTitle3,
            "menu": blockMenu3->{
              ...,
              items[] {
                ${LINKS}
                },
              },
          },
          "block4": {
            "title": blockTitle4,
            "menu": blockMenu4->{
              ...,
              items[] {
                ${LINKS}
                },
              },
          },
          "block5": {
            "title": blockTitle5,
            "menu": blockMenu5->{
              ...,
              items[] {
                ${LINKS}
                },
              },
          },
          "block6": {
            "title": blockTitle6,
            "menu": blockMenu6->{
              ...,
              items[] {
                ${LINKS}
                },
              },
          },
        },
        "header": {
            menuDesktopLeft->{...},
            menuDesktopRight->{...},
            menuMobilePrimary->{...},
            menuMobileSecondary->{...}
        },
  }`);

  cacheTimestamp = currentTime;

  return cache;
}

Having the error here now. Have gone through all schemas and try to fix where I could fix some things

Thanks! Confirmed this works on our repo

I only found this issue on Sunday and by Monday you had already fixed it.  Thanks for your work on this repo


Minor refactorings

Thanks a lot! Sorry I haven’t recognized for a long time. I’ll review soon.

Since the project has been changed a lot, I cherry-picked each commit and merged into master.
Thanks again and sorry for being late 🙇


Decouple djl and serving in dockerfiles and gradle and add serving publish

This PR aims to move towards decoupling the DJL library from DJL Serving by:

Separating version dependencies between DJL and DJL Serving in the Dockerfiles and Gradle build files.
Introducing the serving_publish.yml workflow in the DJL-Serving repository to manage releases independently.
We also remove the Maven publishing logic in the serving_publish workflow as it is no longer needed.

If this change is a backward incompatible change, why must this change be made?
Interesting edge cases to note here
- aarch64 in nightly publish needs to grab env variables again because it's on a separate runner

After this PR is merged, I'll make a PR to remove serving publish from the DJL repo.

For DJL user, how can they get snapshot release on djl-serving?


Manually set Minitest.seed for minitest 5.16 compatibility

Ref: https://github.com/qrush/m/issues/91

Is this th ereasen there is 5 test failures when using Minitest 5.17.0 ?


[QUESTION]: Online install failed due to package manage error?

Question
Hi I'm using the latest rolling iso (2023-09-22) https://sourceforge.net/projects/athena-iso/files/rolling/
I've verified the sha256, it is matched.
install into vmware workstation using online install option,
but get this package manage error:

Does someone in the same situation with me?
looks like the online installation is broken, should go with the offline installation?
thanks in advance

Hey. The error occurred because the ISO maintained tor-browser package that some days ago its maintainer renamed as tor-browser-bin. So I should create and upload a new ISO.
Currently, to use the ISO, install it by Offline Installer and when you land on the environment, remove tor-browser package by sudo pacman -R tor-browser and install tor-browser-bin package.

thanks very much

I am facing the same problem. Can someone help me with all the commands, please?

I am facing the same problem. Can someone help me with all the commands, please?

I'm uploading a new ISO just now. It will have a new installer backend but with a temporary GUI. It will be uploaded when this workflow is completed: https://github.com/Athena-OS/athena-iso/actions It needs around 1h.

How do I download it?

How do I download it?

Now it is in SourceForge in rolling release. It has a beta new installer. During the installation you could see some "ERROR" strings. They are not errors, they are just warning that pacman sees as errors. U need only to reach the end of the installation. note that currently LiightDM is bugged due to webkit2gtk update that broke it, and if u use VMware, use Linux LTS kernel. Remember that Hyprland is not supported for VMs.

Give me a link if you can, thank you

How do I download it?

Now it is in SourceForge in rolling release. It has a beta new installer. During the installation you could see some "ERROR" strings. They are not errors, they are just warning that pacman sees as errors. U need only to reach the end of the installation. note that currently LiightDM is bugged due to webkit2gtk update that broke it, and if u use VMware, use Linux LTS kernel. Remember that Hyprland is not supported for VMs.

Oh, I downloaded it. The site says it was updated 8 hours ago. Thank you, our developer

Also I use VMware What do I do options in the installation

https://athenaos.org/en/installation/install-guest-vmware/

I want it to be an installed version forever. I do not want a live version. Is it possible and how?

I want it to be an installed version forever. I do not want a live version. Is it possible and how?

The ISO you download has Install option to get a "forever" version.

I want the installed version forever. I do not want the live version. Is it possible and how? I can choose any kernel version

I want the installed version forever. I do not want the live version. Is it possible and how? I can choose any kernel version

As I said above.

Please return the appearance of the themes that appear when choosing a theme, like the previous update + How do I know the saved version instead of Live User?

Please return the appearance of the themes that appear when choosing a theme, like the previous update + How do I know the saved version instead of Live User?

as I wrote above, it is a temporary installer. When we finish to develop the new installer GUI, also theme appearance will be provided.

I am watching a video and it installs normally, then when I log in again it chooses to restore a previous system and it comes in a preserved form.

Join Discord because your point is not clear

watch it!!
https://www.youtube.com/watch?v=5-unLy4y_S4&t=651s
https://www.youtube.com/watch?v=5-unLy4y_S4&t=651s
https://www.youtube.com/watch?v=5-unLy4y_S4&t=651s

@HXN2 this behavior is not accepted. Issue is closed.


LFCC and MFCC for frame by frame processing

📚 The doc issue
Both LFCC and MFCC documentation mention the following:

This output depends on the maximum value in the input spectrogram, and so may return different values for an audio clip split into snippets vs. a full clip.

Both features need internally to compute the Spectrogram which has a normalized argument, although as of now it defaults to False and therefore, to my understanding there should be no other sources of dependence on the maximum value in the input spectrogram. Additionally, I think if center=True it may affect a comparison of these features in an audio clip vs the same audio clip split into snippets. Disabling these two, I get an error range somewhere below 1e-5 for torch.float32 that I think is expected, but please correct me if I am wrong (see related code here).
In addition to these, MelSpectrogram method that computes Spectrogram inside MFCC implementation does not mention the potential dependence on the maximum value of the input spectrogram in its documentation depending on the normalized argument that may affect a full clip vs. the same clip into snippets comparison. A same situation occurs with the center argument.
Suggest a potential alternative/fix

If my assumptions are correct, I would expect both LFCC and MFCC to mention center and normalized arguments as the sources of the potential discrepancy when calculating these features for a full clip vs. the same clip into snippets. I find this information quite useful when porting an offline model to real time.

Additionally, MelSpectrogram could include the same information as it also depends internally on Spectrogram

Hi @eagomez2, I checked your code and try to find which line introduces the 1e-5 to 1e-7 error. In torchaudio.transforms.LFCC, the value difference between full audio solution and frame by frame solution is much less than 1e-7 until this line:
       lfcc = torch.matmul(specgram.transpose(-1, -2), self.dct_mat).transpose(-1, -2)

I think the 1e-5 to 1e-7 error is expected as the dtype is torch.float32, and most of the bits are used in self.dct_mat and specgram.
I agree center should affect the output if applying LFCC frame by frame. If center is True, torch.stft pads n_fft / 2 samples on both sides of the waveform. In the whole audio case, the frame in the middle of waveform will not be affected, but in frame by frame case, it is.
For normalized parameter, the current implementation doesn't affect the output since it is based on window instead of the spectrogram.
if normalized:
     spec_f /= window.pow(2.0).sum().sqrt()

But there is discussion about the implementation (https://github.com/pytorch/audio/issues/2104). We may want to revisit this issue regarding the normalized documentation if there is a change in normalized implementation.
Best,

Yes, this can be verified by a simple script.
from torchaudio import functional as F
import torch

specgram = torch.rand(1, 200)
specgram = specgram.repeat(100, 1) # make sure each column has the same max value.
dct_mat = F.create_dct(50, 200, "ortho")
whole = torch.matmul(specgram, dct_mat)
frame = torch.matmul(specgram[0:1], dct_mat)
print(whole[0] - frame[0])

You can see although specgram and specgram[0:1] has the same maximum value, there are still errors that are larger than 1e-7 in the outputs. We can make sure the root cause is not from the max value of spectrogram, but rather from the matrix multiplication vs vector multiplication.

Thanks a lot @nateanl,
Then it's all clear now.


Add endpoint for receiving webmentions

Preferrably as a plug that can be (re)used by other people, like https://github.com/bismark/plug_micropub
(Originally published at: https://inhji.de/posts/add-endpoint-for-receiving-webmentions-Xe-z)

Still need to actually process the webmentions coming in through the webhook

I can now receive webmentions though webmention.io, in the future I may process webmentions myself.
(Originally published at: https://inhji.de/posts/i-can-now-receiv-1GaeR)


[main] Upgrade to latest dependencies

Cron -knative-prow-robot
/cc knative-sandbox/networking-wg-leads
/assign knative-sandbox/networking-wg-leads
Produced by: knative-sandbox/knobots/actions/update-deps
Details:
bumping knative.dev/hack dc6c287...e7d6365:
  > e7d6365 Add [skip-dot-release] feature (# 189)
  > 33ce6af Update community files (# 190)
bumping knative.dev/networking 07c9d76...10dbbe0:
  > 10dbbe0 Update community files (# 686)
  > a44888a Update actions (# 685)
bumping knative.dev/pkg 9c5a731...f4ae0af:
  > f4ae0af Update community files (# 2538)
  > f5db225 Drop `UserInfo` from logger tagging in webhook. (# 2535)
  > 1777513 Update actions (# 2536)

/lgtm
/approve


Station name not set if not inputted by the user

If the user specifies a station number without an accompanying name, the name field is never filled in by the program. The _fill_empty_data method is looking for None, but a user would never be able to specify None.

This has been fixed by changing the method to instead look for truth value on the name field.


feat: add OCP bundle

generate bundle using Makefile
build and push bundle using GH actions on new tag

Pull Request Test Coverage Report for Build<PHONE_NUMBER>3
Warning: This coverage report may be inaccurate.
This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

For more information on this, see Tracking coverage changes with pull request builds.
To avoid this issue with future PRs, see these Recommended CI Configurations.
For a quick fix, rebase this PR at GitHub. Your next report should be accurate.

Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 70.059%

Totals

Change from base Build<PHONE_NUMBER>4:
0.0%

Covered Lines:
1060

Relevant Lines:
1513

💛  - Coveralls


BUG: The dropdown doesn't take into account the scrollbar.

Have a look at the following demo: https://jsfiddle.net/qejvb51s/  Make the screen less than 485px so that the dropdown has to be pushed to the right.
As you can see the dropdown width should have removed scrollbar width from its calculations. At the moment when a webpage has a scrollbar(which is 99% of the websites) the dropdown with dynamic content/width causes horizontal scrolling.
I assume this is an important bug. Do you guys know of a workaround?

Can you assign me? I was able to fix the issue in the demo. Changing the .right class position to relative worked for me, but I'd like to try it for real.

Can you assign me? I was able to fix the issue in the demo. Changing the .right class position to relative worked for me, but I'd like to try it for real.

Really interesting!, how would you guess that? Do you know why does that fix the issue? It wouldn't always be possible to have a relatively positioned parent for the dropdown content; it might break other things in the website.
Secondly consider this demo https://jsfiddle.net/8xtpw23v/1/  I have assigned container: "body" in the initialization. The bug would persist in this scenario.
Thirdly I don't know what you mean by "Can you assign me".

Whatever the container is assigned to determines the size of the dropdown. It seems like an easy fix is to assign the container to the list item that triggers the dropdown. No relative positioning necessary. https://jsfiddle.net/y76vzpba/3/
I'm pretty new to open source so I thought I needed assigned to work on a project. My bad.

It seems like we have a slight communication barrier. Your demo https://jsfiddle.net/y76vzpba/3/ does not work properly for screen size less than 475px. You need to have a relatively positioned parent(li in your case which you have commented styles given).
I found another workaround, which is to give width: 100% to the containing parent of the dropdown: https://jsfiddle.net/gvwsmb6p/
I guess the dropdown plugin uses window.innerWidth instead of document.body.clientWidth. It might be taking into account the  width of nearest relatively positioned parent, as the .dropdown-content itself is absolutely positioned. I'm gonna have to dig into the source code to see why these workarounds are working.

You might want to report these issues at https://github.com/materializecss/materialize which is an actively maintained fork.
PRs are very welcome there and will be reviewed, merged and new contributors will become members of the org.


performance problem

Hi, I have submitted the result to the evalution system, but I did not get the same result as you mentioned in the paper, is there any improvement in your method? On the other hand, are there any reference to visualize the tracking result?

Hi,my GPU is 2080ti, which the compute capability is 7.5.

You can first compare the differences with our detection results which can be downloaded here: https://github.com/coder-wangzhen/AIC22-MCVT#reproduce-based-on-detection-and-re-id-results.


issues

Hello, when I run“python -m train.zinc model.mini_layers 0 model.gnn_type GINEConv”，There is one such error，Could you give me some insight on such a mistake？

I think you are not using the full version anaconda, and you are not using exactly the setup I provided.

I am very glad for your reply. I directly ran the setup you provided on the rented cloud server, and then installed the corresponding function package, but the above error occurred. I will try again. Once again, I would like to express my heartfelt thanks for your answer!


Don't use root logger

Thanks for a useful plugin. Regarding this proposed change, please see: https://github.com/getpelican/pelican/pull/2763 .

I'm deeply sorry for the late response. I don't really use github nor pelican recently so I didn't notice the PR.
Thanks for the contribution.

Oh, no problem. I'd only worry about not reading / missing email. :laughing:
Thanks for merging.


Rename React-Codegen to ReactCodegen

Summary:
This diff renames React-Codegen to ReactCodegen. This way we'll no longer have to try both
#include <React-Codegen/MyModule.h>

and additionally
#include <React_Codegen/MyModule.h>

for cases with use_frameworks.
Differential Revision: D54068492

6549216b765b850a5751075ce270fcb78e76b778


Add saveAsFileBlocking() and saveAsBitmapBlocking()

These can be called directly from Java.

I would avoid giving responsibility to the client for handling saving images for java. Rather I will keep the old interface and introduce new suspend saveFileAsBlocking() APIs for coroutines.


Allow HMR status handlers to return a Promise

This change allows handlers registered using addStatusHandler to return a Promise. The HMR system will wait until the promise settles before continuing. This allows asynchronous handling of state changes.
In our case, we use this to make sure that when our service worker is modified the update is complete and the service worker installed before the dev server triggers a reload on an unaccepted update.
The diff is much easier to read with ignore whitespace turned on.
What kind of change does this PR introduce?
New feature.
Did you add tests for your changes?
Yes.
Does this PR introduce a breaking change?
No. Handler return values were ignored before, but the worst thing that could happen in the unlikely case that someone was inadvertently returning a Promise from a handler that they weren't expecting to be waited for is that the HMR process might be delayed.
What needs to be documented once your changes are merged?
Document in the Hot Module Replacement Management API section that if a status handler returns a Promise that it will wait for the Promise before continuing.

Could you sign the CLA: https://cla.js.foundation/webpack/webpack?pullRequest=13576 ?

Could you sign the CLA: https://cla.js.foundation/webpack/webpack?pullRequest=13576 ?

Do you have a corporate CLA that State Farm can sign on my behalf?
Thanks.

Do you have a corporate CLA that State Farm can sign on my behalf?

We have only general CLA...

I see that the CLA is still showing as being unsigned, but an officer of our company has now signed the document and affirmed that State Farm owns copyright of the contributing code, so I am hoping that you can validate that his signature has been accepted and move the status from unsigned to signed.

@rockwalrus you have to click this link and sign there: https://cla.js.foundation/webpack/webpack?pullRequest=13576
After that the bot will flag the CLA as accepted (after closing and reopening, because it's a bit buggy)

I don't have authorization to sign on behalf of the copyright owner, @StateFarmIns. The executive in charge of open source contribution, @RandyMcBeath, who does have that authorization, signed the CLA. Is there a way for you to manually mark that the CLA has been signed for this request? If not, State Farm is going to have to officially license the code to me, at which point I'll be legally able to license the code to you by signing the CLA. But that will take some time to accomplish.

I don't have authorization to sign on behalf of the copyright owner, @StateFarmIns.

Yeah, but that's not what you need to do. You only need to sign it for yourself.
By signing the CLA you only certify that you created that code, and you are allowed to submit it under our Licence (MIT). Since your company seem to allow it, that should be fine.
But I'm not a lawyer so not super sure...

Is there a way for you to manually mark that the CLA has been signed for this request?

Not really. We could merge the PR without CLA, but that's not the idea of that...
Actually nobody requested that in the last > 5 year since he have this CLA...

I don't have authorization to sign on behalf of the copyright owner, @StateFarmIns.

Yeah, but that's not what you need to do. You only need to sign it for yourself.
By signing the CLA you only certify that you created that code, and you are allowed to submit it under our Licence (MIT). Since your company seem to allow it, that should be fine.
But I'm not a lawyer so not super sure...

Is there a way for you to manually mark that the CLA has been signed for this request?

Not really. We could merge the PR without CLA, but that's not the idea of that...
Actually nobody requested that in the last > 5 year since he have this CLA...

@sokra - according to our lawyers, the problem is that the copyright for this code is no longer held by @rockwalrus - it is instead held by State Farm. So @rockwalrus no longer has the "right" to affirm the terms of the CLA unless we somehow transfer the copyright back to him. So we will need to do our own legal paperwork in order for him to legally sign this CLA himself - according to our lawyers.

Sorry for the delay. We'll let you know when we've worked this out internally.

I am now authorized to sign the CLA, and have done so!

we rewrite tests, maybe make sense to do rebase for CI

Thanks

You're welcome!


How to acquire token for APIs with its own App Registration in Angular app(SPA)

I have a API application with its own app registration, and a SPA with its own app registration. Now when I acquire a token using the above steps for my SPA, in the token the audience is the App ID of SPA. And when I make a call to the API with this token I receive an error for audience mismatch. How can I acquire a token in my SPA for the API app using its AppID or AppIDURL?

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

ID: 0574fe6c-3e23-b803-f12b-aa698d238d5b
Version Independent ID: bf7ebc09-c16f-0b1e-53f8-35f305af0c26
Content: Azure AD AngularJS Getting Started
Content Source: articles/active-directory/develop/active-directory-devquickstarts-angular.md
Service: active-directory
GitHub Login: @jmprieur
Microsoft Alias: jmprieur

@dssravi ; did you have a look at this sample: https://github.com/Azure-Samples/active-directory-angularjs-singlepageapp-dotnet-webapi?

@jmprieur and @CelesteDG i trying to do this in .Net Core

#in-progress

No further questions. #please-close. PM has already provided detailed info above.


Wait for network before running admin-node-setup.service

As we need to know the IPs and hostnames for use in the TLS certificates
this generates, we should ensure the network is up and running before this
unit triggers.
bsc#1062284

CI is broken, and wouldn't test this particular change anyway. Merging based on the +A in the backport, and Rob K's validation of the fix within the environment he found it it.


Release Build Issues

The release build has an issue with scatter reads, I suspect this has something to do with reading strings.

Fixed


bug: after rewrite v4 change background dark <-> light broken

Did you check docs and existing issues?

[X] I have read all the tokyonight.nvim docs
[X] I have searched the existing issues of tokyonight.nvim
[X] I have searched the existing issues of plugins related to this issue

Neovim version (nvim -v)
NVIM v0.10.0
Operating system/version
Linux ArchGame 6.9.7-arch1-1
Describe the bug
After update tokyonight by lazynvim to v4.1.0 i can't change background dark to background light by ub.
Here i'm trying to change background to light (only notification present):

Same with change background to dark:

At 875d145f81cfc7f73f2867d2a7f0d3548baf8642 commit color cange only for status bar:

Steps To Reproduce

Install lazyvim in default installation
Add tokyonitht plugin
Try ub keymap to change background color

Expected Behavior
Changing background color should work correctly.
Repro
-- DO NOT change the paths and don't remove the colorscheme
local root = vim.fn.fnamemodify("./.repro", ":p")

-- set stdpaths to use .repro
for _, name in ipairs({ "config", "data", "state", "cache" }) do
  vim.env[("XDG_%s_HOME"):format(name:upper())] = root .. "/" .. name
end

-- bootstrap lazy
local lazypath = root .. "/plugins/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
  vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", lazypath, })
end
vim.opt.runtimepath:prepend(lazypath)

-- install plugins
local plugins = {
  "folke/tokyonight.nvim",
  "folke/tokyonight.nvim",
  -- add any other plugins here
}
require("lazy").setup(plugins, {
  root = root .. "/plugins",
})

vim.cmd.colorscheme("tokyonight")
-- add anything else here

{
    "folke/tokyonight.nvim",
    lazy = true,
    opts = { style = "moon" },
    commit = "875d145f81cfc7f73f2867d2a7f0d3548baf8642",
}

Having the same problem.

Thank you so much!


Best practices

Removed deprecated elements
Fixed XML structure
Fixed metadata
Used JS best practices
Added fallback font (sans-serif)
Removed unused parameter (it's not provided anyway and would crash if used)
The checks for 1940s to 1970s set strUser instead of checking if they were equal, this has been changed
"html" variable was unused, this has also been changed
Spread century facts over several lines for readability
Added accessibility label to option

Thanks so much for this, just seeing your cleanup of the code taught me a bunch!


Implement GetBlob and GetBlobAsync

The GetBlob and GetBlobAsync methods needs to be completed and activated in the interface.

See PR https://github.com/tarwn/BasicAzureStorageSDK/pull/4


Investigate where to put Box for breaking recursion in ast.rs and implement

Recursion can be broken in an enum like this:
https://github.com/Qiskit/openqasm3_parser/blob/21c03756512f2b4e12bc64f689b9a167007006b3/crates/oq3_semantics/src/asg.rs#L132
with no Boxes here
https://github.com/Qiskit/openqasm3_parser/blob/21c03756512f2b4e12bc64f689b9a167007006b3/crates/oq3_semantics/src/asg.rs#L1222-L1226
The other option is to omit the Box above and instead Box the three fields in the struct. I think the former is better.
In any case, it is mixed now. We should do it uniformly.

Well one way is chosen for better or worse in #168


upload file to google drive

https://blog.tericcabrel.com/upload-file-to-google-drive-with-nodejs/


attach new session in group

With tmux you can create a new session and attach it to an existing session in a group. Both sessions share the same windows and panes but you can view a different window concurrently in each session:
$ tmux new-session -t existing-session-name
This is really useful when trying to put different windows from the same session on different physical screens.
It would be nice to be able to do to something like $ twm -g, fuzzy find over workspaces, select one and have it create a new session grouped with an existing session in the same workspace instead of just attaching to the existing session.

@tombuntus i've made quite a few changes on the development branch, but thought you'd possibly want to try it out
in that  build you can press Ctrl+Enter / Shift+Enter / Alt+Enter to attempt to open a workspace selected in the standard finder (e.g. just running twm)
it basically goes:

if *modifier* + enter:

try finding a twm-generated session with the same path as the workspace you selected (based on auto-set TWM_ROOT env var)
if one is found, create a new session in a group as if you used twm -g and selected the matching session
if none found, move on

open the workspace as is normally expected with just enter

the reason all 3 combinations of ctrl+enter / shift+enter / alt+enter do the same thing currently is that it seems only alt+enter (consistently?) works on linux with the crossterm library, but from what I've seen the other's might work on windows/mac


Romanma working

stub out and edit of Guest Checklist

Lola. I cancelled this. I was helping Roman in CSS and we were having issues. We have a work around so closing this.


[Feature] Add Glassmorphism Dropdown

Description
I want to add a new Glassmorphism Dropdown in Dropdown component.
Kindly assign this to me under GSSOC"24
Screenshots
No response
Checklist

[X] I have checked the existing issues.
[X] I follow Contributing Guidelines of this project.
[x] I am a GSSOC'24 contributor.
[ ] I am a IWOC'24 contributor.
[ ] I am a JWOC'24 contributor.
[ ] I am a SWOC'24 contributor.

Code of Conduct

[X] I agree to follow this project's "Code of Conduct".

@Prince-kushwaha-2004 Can you please assign me this task .


the size of tenor a (9) must match the size of tenor b (10) at a non singleton dimension 3

Hello, I want to ask a question, the input feature map is 228 * 304, but here is an error, the size of tenor a (9) must match the size of tenor B (10) at a non singleton dimension 3.

my code is this .
import torch
from torch import nn
from torchvision.models import resnet50
from bottleneck_transformer_pytorch import BottleStack
layer = BottleStack(
dim = 1024,
fmap_size = (15,19),        # set specifically for imagenet's 224 x 224
dim_out = 2048,
proj_factor = 4,
downsample = True,
heads = 4,
dim_head = 128,
rel_pos_emb = True,
activation = nn.ReLU()
)
resnet = resnet50()
model surgery
backbone = list(resnet.children())
model = nn.Sequential(
*backbone[:7],
layer
)
use the 'BotNet'
img = torch.randn(2, 3, 228, 304)
preds = model(img)


Add default aliases as a helper method in the framework package

This will allow the aliases to be handled in the framework, instead of in the app config, and we can use the new alias merge feature of Laravel
/*
  |--------------------------------------------------------------------------
  | Class Aliases
  |--------------------------------------------------------------------------
  |
  | This array of class aliases will be registered when this application
  | is started. However, feel free to register as many as you wish as
  | the aliases are "lazy" loaded so they don't hinder performance.
  |
  */

  'aliases' => Facade::defaultAliases()->merge([
      // 'Example' => App\Facades\Example::class,
  ])->toArray(),

Closing for now as I'm not sure what the use case is at the moment.


Add Key128bit to wrap sgx_key_128bit_t

Current dependencies on/for this PR:

main

PR #91

PR #86

PR #92

PR #103

PR #110

PR #111   👈

This comment was auto-generated by Graphite.

Graphite Merge Job
Current status: ⏳ Queued to merge
This pull request is currently queued to be merged as part of a stack.
This comment was auto-generated by Graphite.

Job Reference: C6ZyZ0Ggec8V0ksW3mYN

Graphite Merge Job
Current status: 🔄 Waiting for checks to pass
This pull request is currently waiting for CI and mergeability checks to pass before being merged.
This comment was auto-generated by Graphite.

Job Reference: ANN5tbEFcYrOel5JRpoC


Reading into BytesMut always returns 0 bytes read

I took the example TCP server and ran it locally with these dependencies, and this works great.
[dependencies]
bytes = "1.6.0"
tokio = { version = "1.37.0", features = ["full"] }
mio = "0.8.11"

However, when I switch it to read into a BytesMut buffer, every call to read(&mut buf) returns Ok(0). Am I doing something wrong? Should this work? I would be very grateful for any help or pointers.
Here's the updated example code. The only change is in the read loop near the bottom.
use std::collections::HashMap;
use std::io::{self, Read, Write};
use std::str::from_utf8;
use bytes::{Buf, BytesMut};

use mio::event::Event;
use mio::net::{TcpListener, TcpStream};
use mio::{Events, Interest, Poll, Registry, Token};

// Setup some tokens to allow us to identify which event is for which socket.
const SERVER: Token = Token(0);

// Some data we'll send over the connection.
const DATA: &[u8] = b"Hello world!\n";

#[cfg(not(target_os = "wasi"))]
fn main() -> io::Result<()> {
    // Create a poll instance.
    let mut poll = Poll::new()?;
    // Create storage for events.
    let mut events = Events::with_capacity(128);

    // Setup the TCP server socket.
    let addr = "<IP_ADDRESS>:9000".parse().unwrap();
    let mut server = TcpListener::bind(addr)?;

    // Register the server with poll we can receive events for it.
    poll.registry()
        .register(&mut server, SERVER, Interest::READABLE)?;

    // Map of `Token` -> `TcpStream`.
    let mut connections = HashMap::new();
    // Unique token for each incoming connection.
    let mut unique_token = Token(SERVER.0 + 1);

    println!("You can connect to the server using `nc`:");
    println!(" $ nc <IP_ADDRESS> 9000");
    println!("You'll see our welcome message and anything you type will be printed here.");

    loop {
        if let Err(err) = poll.poll(&mut events, None) {
            if interrupted(&err) {
                continue;
            }
            return Err(err);
        }

        for event in events.iter() {
            match event.token() {
                SERVER => loop {
                    // Received an event for the TCP server socket, which
                    // indicates we can accept an connection.
                    let (mut connection, address) = match server.accept() {
                        Ok((connection, address)) => (connection, address),
                        Err(e) if e.kind() == io::ErrorKind::WouldBlock => {
                            // If we get a `WouldBlock` error we know our
                            // listener has no more incoming connections queued,
                            // so we can return to polling and wait for some
                            // more.
                            break;
                        }
                        Err(e) => {
                            // If it was any other kind of error, something went
                            // wrong and we terminate with an error.
                            return Err(e);
                        }
                    };

                    println!("Accepted connection from: {}", address);

                    let token = next(&mut unique_token);
                    poll.registry().register(
                        &mut connection,
                        token,
                        Interest::READABLE.add(Interest::WRITABLE),
                    )?;

                    connections.insert(token, connection);
                },
                token => {
                    // Maybe received an event for a TCP connection.
                    let done = if let Some(connection) = connections.get_mut(&token) {
                        handle_connection_event(poll.registry(), connection, event)?
                    } else {
                        // Sporadic events happen, we can safely ignore them.
                        false
                    };
                    if done {
                        if let Some(mut connection) = connections.remove(&token) {
                            poll.registry().deregister(&mut connection)?;
                        }
                    }
                }
            }
        }
    }
}

fn next(current: &mut Token) -> Token {
    let next = current.0;
    current.0 += 1;
    Token(next)
}

/// Returns `true` if the connection is done.
fn handle_connection_event(
    registry: &Registry,
    connection: &mut TcpStream,
    event: &Event,
) -> io::Result<bool> {
    if event.is_writable() {
        // We can (maybe) write to the connection.
        match connection.write(DATA) {
            // We want to write the entire `DATA` buffer in a single go. If we
            // write less we'll return a short write error (same as
            // `io::Write::write_all` does).
            Ok(n) if n < DATA.len() => return Err(io::ErrorKind::WriteZero.into()),
            Ok(_) => {
                // After we've written something we'll reregister the connection
                // to only respond to readable events.
                registry.reregister(connection, event.token(), Interest::READABLE)?
            }
            // Would block "errors" are the OS's way of saying that the
            // connection is not actually ready to perform this I/O operation.
            Err(ref err) if would_block(err) => {}
            // Got interrupted (how rude!), we'll try again.
            Err(ref err) if interrupted(err) => {
                return handle_connection_event(registry, connection, event)
            }
            // Other errors we'll consider fatal.
            Err(err) => return Err(err),
        }
    }

    if event.is_readable() {
        let mut buf = BytesMut::with_capacity(4096);       // <-- here
        let mut connection_closed = false;
        // We can (maybe) read from the connection.
        loop {
            match connection.read(&mut buf) {                 // <-- and here
                Ok(0) => {
                    // Reading 0 bytes means the other side has closed the
                    // connection or is done writing, then so are we.
                    connection_closed = true;
                    break;
                }
                Ok(_) => {
                    if buf.capacity() == 0 {
                        buf.reserve(1024);
                    }
                }
                // Would block "errors" are the OS's way of saying that the
                // connection is not actually ready to perform this I/O operation.
                Err(ref err) if would_block(err) => break,
                Err(ref err) if interrupted(err) => continue,
                // Other errors we'll consider fatal.
                Err(err) => return Err(err),
            }
        }

        if buf.len() != 0 {
            if let Ok(str_buf) = from_utf8(buf.chunk()) {
                println!("Received data: {}", str_buf.trim_end());
            }
        }

        if connection_closed {
            println!("Connection closed");
            return Ok(true);
        }
    }

    Ok(false)
}

fn would_block(err: &io::Error) -> bool {
    err.kind() == io::ErrorKind::WouldBlock
}

fn interrupted(err: &io::Error) -> bool {
    err.kind() == io::ErrorKind::Interrupted
}

BytesMut::with_capacity(4096) still creates an empty buffer. So you're effectively passing &[] to the read call.
Try assert_eq!(BytesMut::with_capacity(4096), &[]);. I don't use the bytes crate myself, but the same is true for Vec::with_capacity, you need to use vec![0; 4096] (equivalent) instead. In other words create a zeroed buffer, instead of an uninitialised one.

Thank you, that makes sense. I thought the point of BytesMut was to create an empty buffer that read() would fill (up to the capacity) on subsequent calls. I'll switch to a vec and give it a go.

You can still use BytesMut. The problem is the std::io::Read trait, it only works with initialised buffers. So you'll have the same problem with Vec.


Allow translations.js to be exported to specified directory

Previously there was no way of setting this, so it always went
to the default directory, which is not always desirable.
This commit writes translations.js to the same directory as i18n.js
when running the export rake task.

Thanks for your PR!
I am kinda of busy right now, will look at it on Friday.
I can't trust myself on busy days.

I guess this doesn't work yet
Since export_i18n_js_dir_path could be :none, indicating to NOT export i18n.js when running export rake task.

Also it seems possible to have some config translation in i18n-js.yml to achieve what you want.
See Export Configuration (For translations) in README

I'm trying to use the option to export in 'app/assets/javascripts/i18n' (to use both with the manifest file for js and to load the translations server side to execute with ExecJs).
But this configuration doesn't work:
export_i18n_js: "app/assets/javascripts/i18n/i18n.js"
translations:
  - file: 'app/assets/javascripts/i18n/translations.js'


substituted furans

Please annotate to the ChEBI standard the following furan derivatives.
(Could be nice to have the uniform orientation of the structural formulae, e.g. oxygen atom on the top, furan numbering clockwise as in

long alkyl substituents more or less horizontally to the right)
2-Methylfuran (CHEBI:88912)
https://webbook.nist.gov/cgi/cbook.cgi?ID=534-22-5
https://chem.nlm.nih.gov/chemidplus/rn/534-22-5
//
2,4-Dimethylfuran (CHEBI:89526)
https://webbook.nist.gov/cgi/cbook.cgi?ID=3710-43-8
https://chem.nlm.nih.gov/chemidplus/rn/3710-43-8
//
2,5-Dimethylfuran (CHEBI:89052)
https://webbook.nist.gov/cgi/cbook.cgi?ID=625-86-5
https://chem.nlm.nih.gov/chemidplus/rn/625-86-5
//
2-Ethyl-5-methylfuran (CHEBI:88617)
https://webbook.nist.gov/cgi/cbook.cgi?ID=1703-52-2
https://chem.nlm.nih.gov/chemidplus/rn/1703-52-2
//
2-Butylfuran (CHEBI:89750)
Synonym: 2-n-butylfuran
https://webbook.nist.gov/cgi/cbook.cgi?ID=4466-24-4
https://chem.nlm.nih.gov/chemidplus/rn/4466-24-4
//
2-Pentylfuran (CHEBI:89197)
Synonym: 2-n-pentylfuran
https://webbook.nist.gov/cgi/cbook.cgi?ID=3777-69-3
https://chem.nlm.nih.gov/chemidplus/rn/3777-69-3
//
2-Hexylfuran (CHEBI:171966)
Synonym: 2-n-hexylfuran
https://webbook.nist.gov/cgi/cbook.cgi?ID=3777-70-6
//
2-Heptylfuran (CHEBI:167091)
Synonym: 2-n-heptylfuran
https://webbook.nist.gov/cgi/cbook.cgi?ID=3777-71-7
//
2-Decylfuran (CHEBI:168892)
Synonym: 2-n-decylfuran
https://webbook.nist.gov/cgi/cbook.cgi?ID=83469-85-6
//
2-Methyl-5-(methylthio)furan (CHEBI:89286)
https://webbook.nist.gov/cgi/cbook.cgi?ID=13678-59-6
https://chem.nlm.nih.gov/chemidplus/rn/13678-59-6
//
2-[(Ethylthio)methyl]furan (CHEBI:168930)
Note: "IUPAC name" is wrong! Should be: 2-[(ethylsulfanyl)methyl]furan
Synonym: (furfurylthio)ethane
https://webbook.nist.gov/cgi/cbook.cgi?ID=2024-70-6
//
2-methyl-5-propionylfuran (CHEBI:167764)
Note: "IUPAC name" is wrong! Should be: 1-(5-methylfuran-2-yl)propan-1-one
Synonyms (from NIST Webbook):
5-methyl-2-propionylfuran
1-(5-methyl-2-furyl)propan-1-one
1-(5-methyl-2-furyl)-1-propanone
1-(5-methyl-2-furanyl)-1-propanone
https://webbook.nist.gov/cgi/cbook.cgi?ID=10599-69-6
//
3-Acetyl-2,5-dimethylfuran (CHEBI:167367)
Note: "IUPAC name" is wrong!  Should be:
2-methyl-3-[(2-methylfuran-3-yl)disulfanyl]furan {simple substitutive nomenclature} or, better,
3,3'-disulfanediylbis(2-methylfuran)  {multiplicative}
https://webbook.nist.gov/cgi/cbook.cgi?ID=28588-75-2
//
3,3'-Dithiobis[4,5-dihydro-2-methylfuran] (CHEBI:172469)
Note: "IUPAC name" is wrong! Should be:
5-methyl-4-[(5-methyl-2,3-dihydrofuran-4-yl)disulfanyl]-2,3-dihydrofuran {simple substitutive nomenclature} or, better,
4,4'-disulfanediylbis(5-methyl-2,3-dihydrofuran)  {multiplicative}
//

All of the above entries have now been annotated.


Add lint

Codecov Report

Merging #27 (fb23957) into main (d2e8f28) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #27   +/-   ##
=======================================
  Coverage   99.43%   99.43%
=======================================
  Files          10       10
  Lines         352      352
=======================================
  Hits          350      350
  Misses          2        2

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

Oh hey, this was on my TODO list. Thanks!

@camdencheek mb I add simple .golangci.yaml config?

Would definitely accept a .golangci.yaml config! I'm curious what we'd need to add there other than just the default behavior though

Add simple golangci lint config in #30


pythonPackages.jinja2: 2.9.6 -> 2.10

Motivation for this change
Needed for upcoming homeassistant==0.63.0 (will be released in about a week)
See https://github.com/home-assistant/home-assistant/pull/12118
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

/cc maintainers @nbp @garbas @sjourdois

When running nox-review, I get the error configure: error: GNAT is required to build ada. Seems to be a bootstrapping problem but neither do I know how to fix it nor do I think this is related to jinja2.

I guess this would need to be tested in staging first? If so, I can open another PR, against staging this time.