Bad setup.py in 0.2.5

0.2.4 is fine, regression occurs at 0.2.5
Repro is easy:
pip install -v flask-googlemaps

Tidbit you're interested in is
Installing collected packages: Werkzeug, MarkupSafe, Jinja2, click, itsdangerous, flask, flask-googlemaps

  Compiling /private/var/folders/2h/0dr8jftd1916yq_lp40__wzh0000gn/T/pip-build-avapA_/Jinja2/jinja2/asyncfilters.py ...
    File "/private/var/folders/2h/0dr8jftd1916yq_lp40__wzh0000gn/T/pip-build-avapA_/Jinja2/jinja2/asyncfilters.py", line 7
      async def auto_to_seq(value):
              ^
  SyntaxError: invalid syntax

  Compiling /private/var/folders/2h/0dr8jftd1916yq_lp40__wzh0000gn/T/pip-build-avapA_/Jinja2/jinja2/asyncsupport.py ...
    File "/private/var/folders/2h/0dr8jftd1916yq_lp40__wzh0000gn/T/pip-build-avapA_/Jinja2/jinja2/asyncsupport.py", line 22
      async def concat_async(async_gen):
              ^
  SyntaxError: invalid syntax

Impact to user is when you do pip freeze it won't show Flask-GoogleMaps==0.2.5
The error is coming from Jinja but pip install Flask still causes Flask to show up in pip freeze, so something is wrong with the setup.py

Thanks @wontonst! @rochacbruno, this is what I was talking about in my comment on PR #56.
For reference, here's the stack overflow question: https://stackoverflow.com/questions/46105730/why-doesnt-pip-installed-package-show-up-in-pip-freeze

@wontonst the setup.py was replaced by pyproject.toml

Poetry  Python packaging and dependency management

Please use the new release of the project! Thanks!


feat(tests): add initial integration tests to repo

📝 Description

Added new requirements.txt for the development, as we are not using poetry I just added this which has the requirements of the poetry for development and pytest running.
Add new test folder for testing the integrations.
Add new integration test which is basically replica of the intro.ipynb but inside the pytest to run it in CI
Add integration tests to be ran in the CI.

🛠 Type of Change

[x] New feature (non-breaking change which adds functionality)

🔍 How Has This Been Tested?

[x] Added new unit/integration tests

✅ Suggested Checklist:

[x] I have updated the requirements.txt file
[x] New and existing unit tests pass locally with my changes
[x] Pre-Commit checks are passing (locally and remotely)
[x] Title of your PR / MR corresponds to the required format
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] I ran ruff check . --fix-only to appease the lint gods
[x] Commit message follows required format {label}(dspy): {message}

⚠ Warnings
We need to clean up and move to poetry completely, some places we are using poetry and some places requirements which is making it very hard to maintain dependencies.

Thanks @ammirsm ! this looks great - excited to have these integration tests on board!
left a few general comments to add comprehensiveness.
Regarding the poetry dependencies, is the plan to still support both requirements.txt and poetry dependencies? it was a bit unclear from the comments above. Also, will we remove the extra requirements.txt before merging the PR?
Additionally, what's the best way to test the integration tests in this PR? Would we have to create mock PRs or run GitHub actions locally? would love to have that documented as well as this PR is being reviewed.
Also probably good to squash the commit history here :).

Thanks @ammirsm  - the comments look good from my end!

added a new requirements-dev.txt to include all existing requirements for development there. This allows us to maintain everything in CI using pip installer for now. Once we've stabilized the requirements, we'll transition everything to poetry.

I see so just to clarify, we have a temporary requirements-dev.txt for now that will help with the impending poetry migration, and once this is done, we will remove that to avoid the duplicate requirements.txt files?

To run the tests, you simply execute 'pytest tests_integration' locally. When do these tests run? They're executed with each merge and pull request to ensure they don't break our package. Additionally, Hanna will add another workflow that tests the package installed from PyPi, ensuring our package on PyPi is also functioning correctly.

yup this is perfect!

thanks for the reply @arnavsinghvi11 .

I see so just to clarify, we have a temporary requirements-dev.txt for now that will help with the impending poetry migration, and once this is done, we will remove that to avoid the duplicate requirements.txt files?

yes sir, basically bc we don't want to install dev dependencies during the package installation we put them in the new requirements file and we will remove it when we moved to poetry.


"Cannot read property 'name' of undefined" calling factory.model().create()

Package version
v. 5.0.4
Node.js and npm version
node: 10.3.0
npm: 6.4.0
Sample Code (to reproduce the issue)
A sample test case that make use of the "create" method on the defined "User" model.
test("Cannot have two same username", async ({ client, assert }) => {
  const user = await Factory.model("App/Models/User").create();

  const response = await client
    .post("/signup")
    .send({
      username: user.username,
      email<EMAIL_ADDRESS>      password: "aPassword",
      password_confirmation: "aPassword"
    })
    .end();

  response.assertStatus(400);
  response.assertJSONSubset({
    status: "fail",
    data: {
      errors: [
        {
          message: "unique validation failed on username",
          field: "username",
          validation: "unique"
        }
      ]
    }
  });
});

Launching adonis test gives back Cannot read property 'name' of undefined. I saw you use a name property inside the factory index file, but I didn't have time to check the code better. Am I doing something wrong?

I'm sorry, I wasn't defining any blueprint in the factory.js file!


not sending to webhook when clicked

+same

+same

Can you test the Console:Debug mode to see if there are any errors.

Hi, when I run the program as administrator, the problem is solved.+up

@gtavmodder wbu?

you there bud?

you there bud?

unrelated is this fud?

you there bud?

unrelated is this fud?

no its not.

@gtavmodder Should I assume your problem is fixed?


ScalaCompile task does not respect all JavaForkOptions configuration

Current Behavior
Configuring fork options on ScalaCompile tasks such as executable should affect the subsequently launched Scala compile daemon. For example given a script with configuration like below:
compileScala.options.forkOptions.executable = 'path/to/some/jdk/bin/java'

We would expect Scala compile daemon to be forked using the configured Java executable but that is not the case, this configuration get dropped. When we merge Scala and Java fork options here we lose a bunch of configuration on JavaForkOptions, such as executable, boostrapclasspath and others. This makes it currently impossible to cross-compile Scala code with a JDK other than the Gradle runtime JDK. This is problematic since Scala still recommends that the compiler be run with Java 8 despite running Gradle with more modern JDKs being increasingly common. This same issue seems to exist for Groovy as well.

What would be the best CoA action here? A quick fix would just be to call setExecutable() on the newly created JavaForkOptions copying over the configured value, but as mentioned, there are other settings there.
The other option is to adapt BaseForkOptionsConverter such that it can take an existing JavaForkOptions instance to which it will merge in config instead of creating a new default instance.

@ghale I know we had a long discussion about the mess that is all our "options" types. The real blocker here for us is the inability to fork Scala compilation with a different Java version than that of the daemon. This is a huge blocker for us right now as it's keeping one of our projects from moving on from Java 8 for the build runtime because the scala compiler encounters issues on newer Java versions.
Would adding an executable option to ScalaCompileOptions just exacerbate the current situation? I don't see a major aligning of all these compile option classes happening anytime soon, nor am I sure it's even practical or possible at this point.

Or perhaps instead of executable a javaHome setting. In any case, we want to control the Java version used to run the scala compiler.

Yeah, it's not ideal - it might make more sense to key this off of javaHome.  Maybe that's slighlty less awkward.  Fundamentally, I think we want to separate the idea of what fork options the compiler daemon uses and what version of java we compile against.
@big-guy and I spoke about this a little yesterday and we're envisioning a migration path like:

Make the compiler daemon use the version of Java specified in the Java compile options for now.
Have the user declare which version they want to compile against and then we sanity check that against the version of Java the daemon is running with (potentially throwing an error if these don't match).
Have the user declare what version to compile against and separately declare what jvm version to run the compiler daemon with and we figure out how to make that all work.

The last item is a bit nebulous in terms of what flexibility we have, but the idea is to ultimately get to a point where we are better capturing the user's intentions.

Just to clarify, for an initial pass and addressing this issue, we are only looking at implementing item (1) above, yes?

Yeah, steps 2 and 3 are the path to get from the awkward situation we have now to something more reasonable.

Should this be added to the 6.4 rc1 milestone?

Thanks for spotting that and to Sterling for doing it already 👍


Release/0.5.0

Thanks for your pull request. Is this your first contribution to a Snowplow open source project? Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).
:memo: Please visit https://docs.snowplowanalytics.com/docs/contributing/contributor-license-agreement/ to learn more and sign.
Once you've signed, please reply here (e.g. I signed it!) and we'll verify. Thanks.

Thank you for reviewing @paulboocock !
I bumped into this deprecation warning in github actions and so i force pushed only to change this line.


Wip/adami/hexedit edit edit

The newly added toolbar has context menu enabled, but other toolbars don't. Please unify this in either way.

When pasting data I'd like to have all bytes that I pasted marked as changed, even when original byte at some position had the same value, otherwise the result after pasting looks ugly.

When pasting data with non-empty selection I'd prefer to paste them at selection start, not at the cursor (we probably want to discuss this behavior with others also).

Hmm, it would be nice to have option (can be hidden somewhere, since it's not a common use-case) to drop all current changes (currently you need to close and re-open file to do it).
Another thing to discuss - do we want to search to work on original bytes values (current behaviour), or modified ones? (I was surprised by current behaviour but maybe it is desired)

I agree about "drop all". Search should work on modified bytes, right now it is a bug

rebased version: https://github.com/codilime/veles/tree/wip/adami/hexedit-rebase

fixes in rebased version

Fixes in wip/adami/hexedit-rebase (#234), closing.


[MODCLUSTER-478] session drain wait does not end for JBossWeb 7

https://issues.jboss.org/browse/MODCLUSTER-478

Triggering build using a merge of b29e61ec5b99d7659dc253cab1c8257ea5969829 on branch master:
Private: https://jenkins.mw.lab.eng.bos.redhat.com/hudson/job/mod_cluster-1.3.x-pull-player-executor/

Build 163 outcome was SUCCESS using a merge of b29e61ec5b99d7659dc253cab1c8257ea5969829 on branch master:
Private: https://jenkins.mw.lab.eng.bos.redhat.com/hudson/job/mod_cluster-1.3.x-pull-player-executor/163
Public: https://hudson.jboss.org/hudson/job/mod_cluster-1.3.x-pull-player-executor/163

Merged https://github.com/modcluster/mod_cluster/pull/170 instead.
@aogburn could you make the mentioned issues into another MODCLUSTER issue assuming these are still relevant and we can revisit later given https://github.com/modcluster/mod_cluster/pull/170 fixes the issue? Thanks.


PowerShell: Command Explorer Insert Command Does Not Function\Error

Does this issue occur when all extensions are disabled?: No; PowerShell extension must be enabled.

This issue happens for both VS Code installed System-wide and only for the User\AppData.

VS Code Version:

OS Version:

Steps to Reproduce:

Set up system with Windows PowerShell (5.1) and\or PowerShell (7.2.6).
Navigate to PowerShell Explorer.
Select any command > (pencil) Insert Command
Error

It looks like this is caused by the PowerShell extension. Please file the issue to the PowerShell extension repository. Make sure to check their issue reporting template and provide them relevant information such as the extension version you're using. See also our issue reporting guidelines for more information.
Happy Coding!


request with codage problem?

Hello,
i try to use this to make a request with chinese such like:
def twitterreq(url, method, parameters):
req = oauth.Request.from_consumer_and_token(oauth_consumer,
token=oauth_token,
http_method=http_method,
http_url=url,
parameters=parameters)
req.sign_request(signature_method_hmac_sha1, oauth_consumer, oauth_token)
headers = req.to_header()
if http_method == "POST":
encoded_post_data = req.to_postdata()
else:
encoded_post_data = None
print req
url = req.to_url()
opener = urllib.OpenerDirector()
opener.add_handler(http_handler)
opener.add_handler(https_handler)
response = opener.open(url, encoded_post_data)
return response
def fetchsamples():
url = "https://api.twitter.com/1.1/search/tweets.json?q=好的"
parameters =  []
response = twitterreq(url, "GET", parameters)
for line in response:
print line.strip()
if name == 'main':
fetchsamples()
but i got a proble like this:
File "C:\Python27\lib\urllib.py", line 1354, in urlencode
l.append(k + '=' + quote_plus(str(elt)))
UnicodeEncodeError: 'ascii' codec can't encode characters in position 2-4: ordin
al not in range(128)
what should i do?
thank you in advance.
fly

Hi @KunFly this seems to be an issue with python encoding and not this library. As such this library is no longer maintained. Can you please close your issue? Thanks

Hi @KunFly this repo has been given maintainers again. I believe the latest master branch has a fix for this error. I'm closing this unless you still have this issue. Thanks


Add gradient checks for linear operators

Checks for linear operators taken from #307
Merge plan:

[x] #405
[x] Fix autograd for FourierOperator, maybe #404
[ ] Merge this one

Superseded by #536


create how to add title

completes doc task from #430

Codecov Report

Merging #433 (2101ca7) into main (ad18a9b) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #433   +/-   ##
=======================================
  Coverage   69.38%   69.38%
=======================================
  Files          76       76
  Lines        8857     8857
=======================================
  Hits         6145     6145
  Misses       2712     2712

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

Thanks for this but I think this is getting a little to granular. We can't add a how-to guide for every single parameter.

That's fine. I was asked to add it to the docs so I assumed that more than docstring reference was needed.

I think we just need to work out what the appropriate scope for a how to section is. I could see this being part of a guide about laying out multiple views for example.

I'll close it for now. we can revisit later


MadClown's Science recipes are unlocked at the start of the game

All of MadClown's Science recipes are unlocked at the start of the game. This is clearly not intended.
Angel+Bob+Madclown (no additional overhauls)
MadClown's Science 1.1.2

This should now be fixed in 1.1.3


add invoice_creation prop for one-time payment

Hi! This pull request is regarding the #489 issue that we are facing in my company.
:baby:  I have read the contributing guidelines and code of conduct but it is my first contribution so feel free to mention me any omission.
I don't know how to test but I followed Stripe documentation and it seems that the prop invoice_creation was missing in case of mode='payment'.
Thanks!

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

Hi @jsteele-stripe , any news about this PR?
Best,
Rémi


Add attributes for all Field options

Currently we have IsSearchable. As @brjohnstmsft says in https://github.com/idg10/azure-sdk-for-net/commit/960a03e4b30107b2c6eaea3809ca8cd560057c88#commitcomment-19294124 we also need "IsFilterable, IsFacetable, IsSortable, Analyzer/SearchAnalyzer/IndexAnalyzer, etc."
Add all these, and work out what "etc." entails and do that too.

I think this is the list of boolean properties that need attributes:

IsSearchable
IsFilterable
IsSortable
IsFacetable
IsRetrievable (note: true by default)

and then there are the three analyzer properties:

Analyzer
SearchAnalyzer
IndexAnalyzer

So as far as I can tell, the full contents of 'etc' are just IsRetrievable. And for that I think we need a negative because the default is true, so that would be IsNotRetrievableAttribute.

Hmm... Turns out the analyzer ones are tricky, because analyzers are identified by static members of AnalyzerName, and you can't refer to a static property (or any property) in an attribute.

Can we rename IsNotRetrievableAttribute to IsHiddenAttribute?
Regarding AnalyzerName, that is tricky. I'll reply here for better continuity.

Regarding Analyzers @brjohnstmsft said this at https://github.com/idg10/azure-sdk-for-net/commit/960a03e4b30107b2c6eaea3809ca8cd560057c88#commitcomment-19311876 :
In order to keep the names of the strings and AnalyzerName instances aligned, we could introduce another level of indirection:
public class AnalyzerName
{
...
public static readonly AnalyzerName EnMicrosoft = new AnalyzerName(AsString.EnMicrosoft);
...
public static class AsString
{
public const string EnMicrosoft = "en.microsoft";
}
}
I'm not sure if this compiles... If need be, we can always define the strings as private constants at the top of the AnalyzerName class and then reference each string in both the outer and nested classes.
The usage of this would look like [Analyzer(AnalyzerName.AsString.EnMicrosoft)].
What do you think?

It does compile, and it seems reasonable, given the constraints.


python/its-client: computed acceleration is incorrect

The acceleration is currently computed as the distance between two positions, divided by the time elapsed between those two positions.
This is undoubtly incorrect, as that represents a speed, not an acceleration...
Futhermore, in a CAM message, the acceleration is encoded using ETSI units, and has a range of [-160..161], with 161 representing an unknown (or invalid) acceleration.
However, we do see values of 1610 in the CAM messages we emit.

@tigroo @Hugues360 FYI


Create a "isProbablyKotlin" variable ?

It would be nice to know if Javalin was currently being ran as part of a Kotlin app or a Java app.
This could for example be used for suggesting/configuring the correct Jackson dependency.
The problem is not easy to solve though. One approach is to inspect the code calling create() and see if it's annotated with @kotlin.Metadata, something like:

Get classes from Thread.currentThread().stackTrace
Look up classes in classloader
Check if class annotations contain @kotlin.Metadata

Other suggestions would be very welcome..

This is a little too flaky.


Needs update

Needs update updating components review in the coming days

Assign freelansire @usman to repo

archived repo


TestClientTransport inherits from wrong base

TestClientTransport is supposed to handle ASGI but inherits from httpx.BaseTransport which is for WSGI and handles with deprecation warnings ASGI.
It should inherit of httpx.AsyncBaseTransport and implement it.

Yes that is correct. For the async client we adopt something else. In fact you are correct. We should implement the AsyncTestClient directly.
We should also deprecate python 3.8 now


[AutoPR resources/resource-manager] Fix subscription paramter in SubscriptionClient

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/2710

This PR has been merged into https://github.com/Azure/azure-sdk-for-go/pull/1354


Status?

Is this Project dropped atm?

It is currently yes, i'm not really working on Minecraft:Java edition stuff anymore.
More interested in the MCPE stuff.


⚠ Bofrost.nl has degraded performance

In 6157ce5, Bofrost.nl (https://www.bofrost.nl) experienced degraded performance:

HTTP code: 200
Response time: 861 ms

Resolved: Bofrost.nl performance has improved in 5b87e21.


panic in copyFile() after removing public/

Hi Danny,
I found that gozer build panics after removing the public/ directory
$ gozer build
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x20 pc=0x8402fe]

goroutine 1 [running]:
main.copyFile({0x8f3c44, 0x6}, {0x0, 0x0}, {0x8f28f1, 0x5})
        /home/user/code/gozer/fs.go:48 +0x5e
main.buildSite.copyDirRecursively.func2({0x8f3c44, 0x6}, {0x0, 0x0}, {0x4fa025?, 0x8f3c44?})
        /home/user/code/gozer/fs.go:79 +0x7d
path/filepath.WalkDir({0x8f3c44, 0x6}, 0xc00033fcb8)
        /home/user/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.21.4.linux-amd64/src/path/filepath/path.go:530 +0x4a
main.copyDirRecursively(...)
        /home/user/code/gozer/fs.go:77
main.buildSite({0x0, 0x0}, {0x8f8fa6, 0xb})
        /home/user/code/gozer/gozer.go:508 +0x829
main.main()
        /home/user/code/gozer/gozer.go:415 +0x3d2

Steps to reproduce:
$ gozer new   # Create new gozer project
$ rm -r public/   # Remove `public/`
$ gozer build   # panics

This seems to be related to the WalkDirFunc callback in filepath.WalkDir(). The docs describe how the err argument in WalkDirFunc can be non-nil in some cases.
I stumbled upon this after accidentally removing my public directory so definitely user error on this one haha! Happy to post a PR with a fix to log the error instead of panicking if that would be alright.

Hey @cooperqmarshall,
Nice catch!

I stumbled upon this after accidentally removing my public directory so definitely user error on this one haha! Happy to post a PR with a fix to log the error instead of panicking if that would be alright.

Sure thing. An error message would be way nicer than what the panic currently gives us. I can take a look some time myself, but if you're up for it then that'd be awesome. :+1:


Adding Gui.SetIcon(FileName,IconNumber)

Adding a missing method to change the gui Icon

Thanks.  I might make some small modifications.  I'm about to add several more methods/props for Tab control and probably a few others.


enrich emitted event InFlightExitChallenged

[ ] bug report
[ x] feature request

InFlightExitChallenged event log looks something like:
"InFlightExitChallenged(address,bytes32,uint256)"
%{
    "address" => "0x92ce4d7773c57d96210c46a07b89acf725057f21",
    "blockHash" => "0xcfffb9645dc8d73acc4c825b67ba62924c62402cc125564b655f469e0adeef32",
    "blockNumber" => "0x196",
    "data" => "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
    "logIndex" => "0x0",
    "removed" => false,
    "topics" => ["0x687401968e501bda2d2d6f880dd1a0a56ff50b1787185ee0b6f4c3fb9fc417ab",
     "0x0000000000000000000000007ae8190d9968cbb3b52e56a56b2cd4cd5e15a44f",
     "0x7532528ec22439a9a1ed5f4fce6cd66d71625add6202cefb970c10d04f2d5091"],
    "transactionHash" => "0xd9e3b3aaff8156dab8b004882d3bce834ba842c95deff7ec97da8f942f870ab4",
    "transactionIndex" => "0x0"
  }

we decode and postprocess this into:
%{
    challenger: <<122, 232, 25, 13, 153, 104, 203, 179, 181, 46, 86, 165, 107,
      44, 212, 205, 94, 21, 164, 79>>,
    competitor_position:<PHONE_NUMBER>37316195423570985008687907853269984665640564039457584007913129639935,
    eth_height: 406,
    event_signature: "InFlightExitChallenged(address,bytes32,uint256)",
    log_index: 0,
    root_chain_txhash: <<217, 227, 179, 170, 255, 129, 86, 218, 184, 176, 4,
      136, 45, 59, 206, 131, 75, 168, 66, 201, 93, 239, 247, 236, 151, 218, 143,
      148, 47, 135, 10, 180>>,
    tx_hash: <<117, 50, 82, 142, 194, 36, 57, 169, 161, 237, 95, 79, 206, 108,
      214, 109, 113, 98, 90, 221, 98, 2, 206, 251, 151, 12, 16, 208, 79, 45, 80,
      145>>
  }

PS: naming we use is: [{"challenger", :challenger}, {"challengeTxPosition", :competitor_position}, {"txHash", :tx_hash}], where key is contracts naming, value is elixir-omg naming.
Now the problem is as follows:
this event alone is unusable to us and we must further enrich the data to:
%{

      competing_tx: <<248, 116, 1, 225, 160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 59, 154, 202, 0, 238,
        237, 1, 235, 148, 198, 56, 110, 145, 88, ...>>,
      competing_tx_inclusion_proof: "",
      competing_tx_input_index: 0,
      competing_tx_pos: 0,
      competing_tx_sig: <<135, 150, 205, 47, 23, 196, 225, 163, 14, 99, 107,
        226, 239, 125, 163, 142, 45, 38, 37, 87, 165, 186, 252, 203, 197, 98,
        199, 6, 66, 2, 159, 127, 31, 39, 225, 8, 133, 11, 72, 94, 217, 104, 169,
        ...>>,
      in_flight_input_index: 0,
      in_flight_tx: <<248, 163, 1, 225, 160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 59, 154, 202, 0, 248,
        92, 237, 1, ...>>,
      input_tx_bytes: <<248, 83, 1, 192, 238, 237, 1, 235, 148, 122, 232, 25,
        13, 153, 104, 203, 179, 181, 46, 86, 165, 107, 44, 212, 205, 94, 21,
        164, 79, 148, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ...>>,
      input_utxo_pos:<PHONE_NUMBER>

  }

we do this by calling the eth node method: eth_get_transaction_by_hash.
Could we expand the Event with the data we need to further retrieve from eth client?
[
      :input_tx_bytes,
      :input_utxo_pos,
      :in_flight_tx,
      :in_flight_input_index,
      :competing_tx,
      :competing_tx_input_index,
      :competing_tx_pos,
      :competing_tx_inclusion_proof,
      :competing_tx_sig
    ]

In general we try to send as little info as possible in events, because it's all stored in the tx logs, which costs money.
Some of those fields are quite large: input_tx_bytes, in_flight_tx, competing_tx, competing_tx_inclusion_proof, competing_tx_sig
But I think it can be done. A topic (indexed) field can be max 32 bytes, but other fields have no limit.
Is it worth it though? Is the benefit one less eth_get_transaction_by_hash call?
We should calculate exactly how much extra gas this would cost per challenge (which in turn affects the bond sizes)

There are three instances where we need to enrich the event. I'll gather all of them below and we can asses whether it makes sense to proceed or not.
The problematic part I think is where these events are not sufficient - in exits. So a large amount of exits detected in a block means we need to eth_get_transaction_by_hash  for each separately - in a tight loop!
Events needing enrichment:
InFlightExitChallenged(address,bytes32,uint256)

calling function challengeInFlightExitNotCanonical to retrieve: "inputTx",        "inputUtxoPos",        "inFlightTx",        "inFlightTxInputIndex",        "competingTx",        "competingTxInputIndex",        "competingTxPos",        "competingTxInclusionProof",        "competingTxWitness"
ExitStarted(address,uint160)
-calling function startStandardExit to retrieve: :utxo_pos, :output_tx, :output_tx_inclusion_proof

InFlightExitStarted(address,bytes32)
-calling function startInFlightExit to retrieve: :in_flight_tx, :input_txs, :input_utxos_pos, :input_inclusion_proofs, :in_flight_tx_sigs
WDYT?

In event InFlightExitChallenged(address,bytes32,uint256) function challengeInFlightExitNotCanonical  competing_tx_inclusion_proof is actually not used. pls confirm @pdobacz
I've ran tests that remove this field and it seems OK.

@InoMurko
re field not being used - this could be totally possible, not all fields that the "enriching" adds are used. The enriching has been done "100%" for events that required it, that is it captured all of the call_data items.

Now more on the general topic: an alternative I would suggest is that we plan for a thorough rethinking of how we approach contract events (and in general - reading data from the contract) as opposed to including the bits that the current implementation of chch/watcher uses.
So following an old issue:

There's a couple of factors at play here:

data can be read in 3 ways:

read the state of the contract from the currently synced eth-height
read the log entries
read the call data
(added now) run helper transformation functions like the getInFlightExitId(bytes)

gas implications: generating logs is expensive but not that much. Persisting state of the contract (e.g. not deleteing it in order to read data later) is expensive too
What kind of data lives where: e.g. call_data won't ever hold anything that is dependent on the state of the contract
consistency, consistency, consistency

There might be data that would be useful to have in the events, but we're not currently getting it via the "enriching" mechanism, I think one example is exit_ids which could potentially be included in the events.

Similarly output_tx_inclusion_proof is not used for:
ExitStarted(address,uint160)
calling function startStandardExit to retrieve: :utxo_pos, :output_tx, :output_tx_inclusion_proof

@kevsul @boolafish do you guys think this is feasible?

hmmm, I am still not fully convinced we should include so many data in events, especially quite some data can probably be fetch from DB (eg. tx, inclusion proof) instead of from root chain at all.
Probably in-flight exit is the exception (and thus the main discussion here?) as we cannot assume the service (ch-ch/watcher) has the in-flight exit tx data. So in-flight exit data must to some degree rely on root chain data source.

So a large amount of exits detected in a block means we need to eth_get_transaction_by_hash for each separately - in a tight loop!

Can I understand a bit more what is the problematic part here? Is it the infura cost being too high? Or sudden huge spike might causing timeout of the process as it is looping around?
Due to the gas cost of startIFE, we could have around max 166 startIFE per eth block. (10,000,000 / 60,000). It is not crazy amount of number though it is not a really small amount of number too. Would this be okay even if we continue the eth_get_transaction_by_hash path?

But don't get me wrong, I do feel there is need to re-structure our events and is also trying to collect inputs for that. However, my feeling is that for txBytes it might be a bit too expensive and unnecessary to log it in event....for other data with limited size it might be easier?

We have three events that we have to "enrich" with call data (eth_get_transaction_by_hash).

exit_started
in_flight_exit_started
in_flight_exit_challenged

From what I'm able to gather, the data we need from the extra "call" is:
SE I believe (exit_started):

utxo_pos
output_tx

IFE (in_flight_exit_started)

in_flight_tx
in_flight_tx_sigs
input_txs: input_txs
input_utxos_pos: input_utxos_pos

IFE (in_flight_exit_challenged)

competing_tx
tx_bytes
competing_tx_input_index
competing_tx_sig

The thing is, that if we cannot include all fields for an event it really doesn't make sense to one or two. What I mean is: if you add utxo_pos to the SE event I'll still need to get output_tx with an extra call. So retrieving one field or two is still one RPC call so it wouldn't solve the problem.

Just flying over the issue I get the impression that the rationale here is to expand Logs in order to save RPC calls. If that is the case then I have strong reservations of refactoring the events with the result of increasing the gas costs or adding more net more to logs. Bear in mind that increasing the gas price for logs was actively discussed at the last devcon and it's likely to happen as logs are a major factor in increasing the requirements to run a node.

--- from @thec00n (moving comment from confluence)


sails command not found after install

Hello, I am using Mac and I can use npm global installations like express etc. But today I tried to install Sails globally, never was successful. Actually installation looks like ok but sails command cannot be found on terminal. How can I understand what is wrong and/or what can I do to understand the situation better?

if you are on Linux / ubuntu
run these two commands for me it works

alias sails="/usr/lib/node_modules/sails/bin/sails.js"
~/.bashrc


Fix prange work creation for large solution intervals/limited data.

@landmanbester This should fix your error.
For posterity, this fixes a flaw in the code which resamples the solution intervals onto a finer grid to allow additional parallelism inside the solvers. Previously, I had only tested it on infinite solution intervals and not on normal solution intervals but on a very small data partition (e.g. a very short scan). This case revealed a minor flaw which was resulting in the remapping being constructed incorrectly. This has now been resolved.

Thanks @JSKenyon, seems to be running now (at least its further along than it was before). Will keep you posted


Getting TypeError: Cannot read properties of undefined during authentication before purging

I'm getting error on test envs -  Cannot read properties of undefined (reading 'ApiClient') when I try to run purging cache APIs on the code below:
import Fastly from "fastly";
Fastly.ApiClient.instance.authenticate("FASTLY_API_TOKEN");
const apiInstance = new Fastly.PurgeApi();

Locally, I get a similar error - TypeError: Cannot read properties of undefined (reading 'instance') on the authenticate line.
I referred to https://developer.fastly.com/reference/api/purging/  for documentation on purging cache for Fastly version 3.0.0-beta3. This is when I upgraded from Fastly 2.2.1 to 3.x since there's no documentation available on purging for 2.x available anymore and we needed one to start purging cache by url.
Can anyone help with this?? I would really appreciate a quick response.

This was resolved on test envs by replacing import statement with require. Though that still does not work on local (M1 Mac node version 16.17.1).
But the purgeKey call works but the purgeurl call still fails.
async purgeUrl (url) {
    const options = {
      cached_url: url
    };
    try {
      const response = await apiInstance.purgeSingleUrl(options);
      console.log(response);
    } catch (error) {
      throw new PurgeUrlRequestFailed(url, error);
    }
  }

ERROR	PurgeUrlRequestFailed: Request to purge url test-service.qatest.com/?x=abc&y=css&specificity=search-widget has failed for the following reason: {}
    at _.purgeUrl (/var/task/fastly-cache.js:37:169639)
    at w.bustCache (/var/task/fastly-cache.js:37:170035)
    at /var/task/fastly-cache.js:37:172844
    at Array.forEach (<anonymous>)
    at Runtime.U [as handler] (/var/task/fastly-cache.js:37:172676)
    at Runtime.handleOnceNonStreaming (file:///var/runtime/index.mjs:1028:29)
    ```

The API call to purge url work through postman and not through the client. I checked, I couldn't find the POST call to purge url in the client (which should have been there according to the documentation). I could only find the POST call to purge for tags/keys.

Anyways, I am working around this by using fetch instead of this client for now to unblock myself.


Feat module umd globals

Description
Issue: https://github.com/swc-project/swc/issues/6697
Implement umd globals mapping features and extra related fixes.
Following as best, the babel plugin @babel/plugin-transform-modules-umd
Most things were implemented alike. And there are some important differences and the motivation is explained as well.
features and changes
Reducing function
Extracted the reducing logic in global_name() method to a function.
And added js extension no inclusion in reduction and handling dot imports.
 or ".." or ../.. ... dependencies => global[""]  --| expect instead |--> global._ as babel do.
Change I made:
// config.rs
fn reduce_src(src: &JsWord) -> JsWord {
    // ...
    // ...
    out = out.to_camel_case().into();
    if (out).eq("") { // <----- handling dots imports
        out = JsWord::from("_"); //<___/
    }
    out
}

And outputting _ as a member and not a computed member ["_"]
member vs computed_member => babel does set it as a member
Change I made:
// umd.rs
if is_valid_prop_ident(&dep_name) || dep_name.eq("_") {
                           // -------------------/^

I updated one existing test after that:
// crates/swc_ecma_transforms_module/tests/fixture/common/issue-4456/1/output.umd.ts (768dec8)
factory(global.input = {}, global[""],
// ==to===>
factory(global.input = {}, global._

Js extensions no inclusion in reduction
change made:
fn reduce_src(src: &JsWord) -> JsWord {
    let mut out = src.clone();

    let js_ext_regex = CachedRegex::new(r#"\.([cm]?[jt]s|[jt]sx)$"#).unwrap();
    // ...             --------/^
    // ...
    out = JsWord::from(js_ext_regex.replace(&out, "")); // <----- no js extension inclusion
    // ...
}

Before:
factory(global.input = {}, global.rootJs, global.stubFalseJs);
                     //           ___/^          ________/^

after:
factory(global.input = {}, global.root, global.stubFalse);
                    //            __/^         _______/^

I followed how babel does it in no exact mode:
import worldLevel from './world/level/index.js';
import another from './world/level2/index.js';
// ==========>
factory(mod.exports, global.index, global.index);
global.input = mod.exports;

Babel does leave it with Js extension in exact mode. But i didn't follow it in that mode. For the reason listed in the motivation.
Motivation:
For mapping the lib output you do the following:
Think of the file name
index.js => global.index = {}
input.js => global.input = {}

When we include imports:
factory(global.input = {}, global.index)
                    //    ---------/^ import

The import is something that is supposed to be added already to global. And compiled by the same process. So the first step of lib module exports go with filename reducing to filename stem. It's without extension. And it should be preserved as well for imports reduction. So that the imports dependencies map to the real added globals values.
Ex:
input.js => global.input = {} // imports from "./lib1.js", from "./lib2.js"
lib1.js => global.lib1 = {}
lib2.js => global.lib2 = {}

if ./lib1.js is reduced to global.lib1Js then it wouldn't work, because lib1Js is never added to global. Only global.lib1 is. (lib1.umd.js is included before input.umd.js). And that's the motivation.
And that is what babel does. And the change reflects that.
Updated tests
For this change I updated two existing tests:
// crates/swc_ecma_transforms_module/tests/fixture/common/issue-962/output.umd.js (768dec8)
factory(global.input = {}, global.depJs);
                                   //^
// =========>
factory(global.input = {}, global.dep);
                                  //^
// crates/swc_ecma_transforms_module/tests/fixture/common/issue-578/2/output.umd.js (768dec8)
factory(global.input = {}, global.rootJs, global.stubFalseJs);
// =========>                       //^                 //^
factory(global.input = {}, global.root, global.stubFalse);
                                   //^               //^

Globals mapping main feature and implementation and choices
First and following the babel plugin there is exact globals mode and no exact globals mode.
In babel, the exact mode is activated by "exactGlobals": true.
I went first with that format. But then I hit a limitation with the exact mode handling choice.
I opted for doing exact matching using regex only. The Babel plugin match using string only.
I see it as inflexible. And require more work when the same imports are imported in different modules and have different relative paths ...
The way babel does it. it's to match exactly against the import declaration expression. Regex is more flexible and allows a better match for the same module without needing to repeat the matching ...
Example:
import another from './world/level2/index.js';
import another from '../world/level2/index.js';

are different
and
{
    globals: {
        './world/level2/index.js': 'Dragon.Bolt',
    },
    exactGlobals: true,
},

will match the first only.
And
{
    globals: {
        'world/level2/index.js': 'Dragon.Bolt',
    },
    exactGlobals: true,
},

will not match any.
A regex like:
'world/level2/index\\.js$' // or
'world/level.*?index\\.js$'

will match both.
Babel exact mode illustration:

Need to be all exact.
I started with globalExacts {bool} and globals {map}. But then to support the fallback resolution. Regex matched in order. The first that match, is used. I went for two variables. globals {HashMap<String, String> type} for no exact mode. And exactGlobals {Vec<(String, Sting)> -[[regexStr, mapStr]]- type} for exact mode.
So if none is provided. The default reduction is used. As before (plus the new mini changes).
If one is provided. It will go with exact or no exact.
No Exact mode
with globals {Option<HashMap<String, String>>} property.
Example
{
  "globals": {
    "@themagician/sparkle": "MatchedTMSparkle",
    "./worldLevel": "MatchedWorldLevel",
    "./storm.js": "MatchedStormJs",
    "./phenomena.levels": "MatchedPhenomenaLevels",
    "./some/index.js": "MatchedIndexJs",
    ".": "Matched_",
    "input": "WorldLib"
  }
}

the resolution happens as follows:

at configuration build. The globals are transformed into a reduced format. Where the left side is reduced. example:

`@themagician/sparkle => sparkle`,
`./phenomena.levels => phenomenaLevels`,
`./some/index.js => index`

The same reduce function is used to convert the imports. Babel does it that way.

any import or filename stem (for the file and lib export) is reduced first and checked against the hashmap. If it matches. The mapping is used. Otherwise, just return the reduced format.

The differences with babel are:

that babel does reduce the map as well. So mapping "@themagician/sparkle": "TM.Sparkle" in babel will map to global.TMSparkle. While in what I did, it would be global.TM.Sparkle. I opted for that because it's simpler. Less processing. And more flexible. People can map to whatever they want. It's there responsibility and again more flexible. Also, it's natural to not use . and whoever does, should know what he is doing.

Babel doesn't reduce the matchers. While our implementation does

{
    "globals": {
        "./this/some/lib.js": "Lib",
        "lib.js": "Lib",
        "lib": "Lib",
    }
}

All works the same in our implementation => they are reduced first. So they all end up as lib.
Babel require the users to provide the reduced format directly. Only "lib": "Lib" would work in babel for the example above.
I opted for this choice. To make it more intuitive and simple for users.
Exact mode
config format:
exactGlobals: Vec<(String, String)>
{
  "exactGlobals": [
    ["@themagician/sparkle", "MatchedTMSparkle"],
    ["\\./worldLevel", "MatchedWorldLevel"],
    ["\\./storm\\.js", "MatchedStormJs"],
    ["phenomena\\..*?$", "MatchedPhenomenaLevels"],
    ["\\./some/index\\..*$", "MatchedIndexJs"],
    ["^(\\.*?/*\\.*)*$", "Matched_"],
    ["(^|.*?/)input$", "WorldLib"],
    [".*NOMatch", "NO_MATCH"]
  ]
}

Picked as Array to allow fallback resolution for regex.
Reflected on the precedency test crates/swc_ecma_transforms_module/tests/fixture/common/issue-6697/exact-globals/matching-regex-order-precedency
I opted for regex. For the reasons explained above (babel exact string matching, is not flexible, and repetitive to work with ...).
The mapping from Vec<String, String> to Vec<CachedRegex, String> is done at the BuiltConfig build step.
Info
How to map lib (module export)
every module is exported as global.<filenameStem> = {}. So input.js => global.input = {}.
With no exact mode. just do the following:
{
    "globals": {
        "input": "LibSome"
    }
}

Exact mode
{
    "exactGlobals": [
        ["^input$", "LibSome"]
    ]
}

{
    "exactGlobals": [
        ["input", "LibSome"]
    ]
}

Would still work. And multiple regexes go with first is first to be matched.
In the above: input.js => global.LibSome = {}
Regex
back slash should go in JSON as \\. Ex: "^\\.$"
I would write a note about using regex in the doc.
Tests
All features were tested.
Documentation
I have all my notes. I can update it.
To check and questions
Dropping old globals to HashMap<String, Expr>
globals: self
    .globals
    .into_iter()
    .map(|(k, v)| {
        let parse = |s| {
            let fm = cm
                .new_source_file(FileName::Custom(format!("<umd-config-{}.js>", s)), s);

            parse_file_as_expr(
                &fm,
                Syntax::default(),
                Default::default(),
                None,
                &mut vec![],
            )
            .map_err(|e| {
                if HANDLER.is_set() {
                    HANDLER.with(|h| e.into_diagnostic(h).emit())
                }
            })
            .unwrap()
        };
        (k, parse(v))
    })
    .collect(),

globals wasn't used anywhere. And i didn't need the map above that was about mapping to Expr. So i drop it.
Is it ok? should i comment it out only?
no exact mode matcher reduction
As mentioned in no exact mode section and the part about differences with babel. I implemented the matchers (left side) to be reduced. First before matching. Allowing the users to write lib.js or ./some/lib.js or lib all will be reduced to the same lib. Babel require the reduced format or wouldn't work.
Is it ok for what i did (still compatible with babel, but an extra reduction operation)? Or should i just follow the babel plugin on that.
New to rust
I wonder about what i could have not done well. And what should be improved. Or done better.

BREAKING CHANGE:
Not breaking change.
There is things that were changed and provide a differnet js output then before (dot imports, Js extension no inclusion). But none is a breaking change.

Related issue:
https://github.com/swc-project/swc/issues/6697

cc @magic-akari Can you take a look?

Sorry for the late reply.
It is an oversight which swc behaves differently than babel with respect to file extensions and dot imports.
I tested babel locally and have some doubts about some details
 let js_ext_regex = CachedRegex::new(r#"\.([cm]?[jt]s|[jt]sx)$"#).unwrap();

Do you only deal with some specific suffixes?
The behavior of babel is to erase the last suffix, whatever it is.
Examples:
import "foo.js";
import "foo.xxx";
import "foo.js.js";
import "foo.js.xxxx";

->
factory(global.foo, global.foo, global.fooJs, global.fooJs);

In this PR, you did two things:

Fix existing bugs.
Add exactGlobals support which is more powerful than babel.

For 1. I think it's ok.
For 2. I have no idea, it depends on @kdy1 .

For 2, we need more discussion before merging a PR.

@magic-akari Thank you!

@magic-akari @kdy1 sorry for being late. I got disconnected the past few days due to extra unexpected work.

Do you only deal with some specific suffixes?

I did only the javascript one.  For the fact of only js, It makes sense for UMD. Otherwise, the thing is that those are imports written in the code source. And we do have two cases. People writing with the js extension or without it (commonjs, typescript style). some.container.js and some.container for me should come as the same.  In the first it would be someContainer in the second it would some if we follow what you mentioned. For this reason, I did the .js only extension. And I think it's more right (some.service and some.container should not both resolve to the same some global). And the stemand as implemented in swc. Would have the file with it's js extension. So that allows the alignment as explained in the motivation in the description.

@kdy1 if you already checked the comment I wrote. I edit it to make it more clear. Just to let you know. Otherwise i don't want to ping you unecessarly.

Hava any progress？

Can you rebase?


Remove Legacy/Deprecated Symbols

Describe the bug
Microsoft is now on the third revision of the symbols font with Windows 11 and WinUI3.
Segoe UI Symbol -> Segoe MDL2 Assets -> Segoe Fluent Icons
However, default styles in this repository continue to use Unicode points for symbol glyphs that are from the original Segoe UI Symbol font in Windows 7/8.x. These all need to be updated to the modern Unicode points.

https://docs.microsoft.com/en-us/windows/apps/design/style/segoe-fluent-icons-font#icon-list
Steps to reproduce the bug
Search the source code for the mentioned Unicode points.
Expected behavior
Should be using the valid symbols with latest Unicode points described here:
https://docs.microsoft.com/en-us/windows/apps/design/style/segoe-fluent-icons-font
Note that these are for the most part backwards compatible with Segoe MDL2 Assets; however, glyphs must exist in both fonts for full compatiblity.
Screenshots
A quick source code search only returned the following legacy symbols that need to be updated.

Version Info

NuGet package version:

Windows app type:

UWP
Win32

Windows version
Saw the problem?

Insider Build (xxxxx)

May 2021 Update (19043)

October 2020 Update (19042)

May 2020 Update (19041)

November 2019 Update (18363)

May 2019 Update (18362)

October 2018 Update (17763)

April 2018 Update (17134)

Fall Creators Update (16299)

Creators Update (15063)

Device form factor
Saw the problem?

Desktop

Xbox

Surface Hub

IoT

Additional context

@MarissaMatt FYI, thoughts?

@licanhua FYI

@StephenLPeters @bpulliam what's keeping this?

May I ask what commit/pr?

@Jay-o-Way I thought it was yours https://github.com/microsoft/microsoft-ui-xaml/pull/8379

Alrighty 😁
Any idea what's the status on the SymbolIcon issue?

No idea on the status. If you think I should re-open this and there is more to address, I can do that.

Well, it's closely related, but not exactly the same. There's issue https://github.com/MicrosoftDocs/winrt-api/issues/2363 in the MSdocs repo. I wish I knew where the "source code" for that enumeration / function was, so I could look in to it...

Oh, if you want to update the symbol enum I doubt you can. It would be a breaking change and should have been done for WinUI 3 initial release. It's too late now.

@robloo I don't know... Afaik there are two core things wrong with the SymbolIcons: icon codes (which is exactly the same as this issue and my pr - ergo doable) and the hardcoded use of MDL2 font. Which, I'm guessing, might be easily solved: for FontIcon, it is common knowledge that it uses StaticResource SymbolThemeFontFamily by default.

Is it?
I've asked for this a few times here & there, but nobody seems to be able or willing to answer the question in the first place ☹

This is what drives the SymbolIcon https://learn.microsoft.com/en-us/uwp/api/windows.ui.xaml.controls.symbol?view=winrt-22621
It is not publicly released. It will come when WinUI3 open sources, if ever.
SymbolIcon, if it was available, would be in this repo. It is hard-coded intentionally though because of that enum above. It's how it translates names in XAML to unicode points. You can't change it.
If you want to change the font you need to use a FontIcon.

That's the first comment I call an answer. Thank you for that. This means SymbolIcon by itself is deprecated and nobody should actually be using it anymore.

It's not deprecated. Microsoft doesn't make breaking changes in code like that though. Switching from MDL2 to Segoe Fluent would also change the design of the glyphs which is a design breaking change so again likely non starter. They had to do it for WinUI 3 and didn't.
If you want to push to update the symbols enum unicode points when it open sources by all means do so. Just don't hold your breath.


Move gallery apps to shinyapps.io

I did some tests and the shinylive apps on the gallery take about 25s to load on my machine. This is too slow for such simple applications and since the user likely doesn't know the internals of shinylive they'll think "Shiny is pretty slow" instead of "wow isn't it amazing that these are running in the browser!"
Hosting the apps has some additional benefits as well:

More friendly to users with bad internet connections
We can provision some apps to be always running
It encourages more complex apps

I agree that 25s is too slow for an app to start up.
Just to be clear, the reason that many (not all) of the gallery apps are deployed on shinylive.io is not just because we thought it was cool for them run in the browser. We had discussions about it and weighed pros and cons.
I think the biggest difference in your experience is probably the speed: I suspect that CloudFlare (the current host for shinylive.io) may not have good performance where you're located, resulting in slower loading times for you than for most others. I think it's likely that moving to AWS will improve performance for you and others who aren't well served by CloudFlare, so that's something we should do.
Some pros of having examples on shinylive.io as opposed to shinyapps.io:

No need to redeploy apps when we update Shiny (they automatically use the version of Shiny that's on shinylive.io), and no need to manage/maintain the deployments on shinyapps.io.
Many apps load faster (for me) on shinylive.io than a cold-started app on shinyapps.io. For example, the orbit app on shinylive.io loads in about 5s with a hard reload in the browser. An app that has lighter Python dependencies (Wordle) loads in about 2s. That said, if the apps are configured on shinyapps.io to stay running, they will be able connect faster (see comment about that below).
The user can easily see the code alongside the app, and experiment with it.

For any apps that we have on shinyapps.io, they definitely should be configured to keep a process running. I just looked at the Airmass app, for example, and it took 17s to start. After the initial startup, a reload only takes about 1s.

Right, so a few options:

We could redeploy the apps from CI as part of the release process which would trigger the update.
Are you testing those shinylive apps from a clean slate? I don't quite understand how the whole pyodide initialization process can be faster than connecting with a running application just because it's sending so much more data
Could we include a link in the application which would let people open it in Shinylive for editing

I guess my intuition about it is that mostly people look at the gallery to get a sense of the user experience rather than the developer experience. So fast load times are more important than being about to edit and reload them.

We modified the gallery account so that we can now keep the apps alive on shinyapps.io for two days since their last visit. So that would probably mean that 99% of people would hit a running app and wouldn't need to wait for a restart.

I do think an "see and edit the code in the browser" type button to shift to shinylive could meet the "The user can easily see the code alongside the app, and experiment with it."
But moving to AWS to speed things up and getting a handle on the "average load times" seems hard.  Do we need to do some benchmarking?  Load times really do matter quite a bit. (We are all in loud agreement on that!)

You could add a "shinylive button" to the apps easily enough, provided that you already had a copy of the code in shinylive to put as the href. That makes for a different problem of ensuring that the code stays in sync in both places, which we could solve with a publishing script that updates both places, or something. Or just rely on code comments to remind us to do it and count on there being few updates to the example apps to worry with.


Feature/fb list template

#162

Coverage increased (+0.05%) to 93.959% when pulling e8483d34287d2e725122ea6b17d4039fdac6d98b on feature/fb-list-template into bafa398c201cb243bf8e1db96e5c12171bd9d021 on develop.


Deploy Heroku

Hello!
I'm using this template to upload an app to Heroku and I get this error, does anyone know how to solve it?
thanks

Looks like Heroku may not allow writing to directories outside of a specific one.
Have you tried https://github.com/nickjj/docker-rails-example/discussions/70#discussioncomment-7252423?

it works, thank you


Replace regex use with html-to-text npm module

Problem statement
The regex used to remove HMTL markup may have performance issues.
What you need to know

Regex use one
Regex use two

Acceptance criteria

[ ] Eliminate both regex uses

To do

[ ] ...

@etanb hi, could you (or someone who asked you to work on it) please add an example of those issues. Thanks! I assume we want to do it to ensure that we get plain text out of html, right? Just wondering why regex is not applicable.
cc @chris-kuryak

SonarCloud thinks <(.|\n)*?> might allow a DoS condition due to catastrophic backtracking.
It looks like you’ve used that at https://github.com/CDCgov/prime-reportstream/blob/master/frontend-react/src/components/FileHandlers/FileHandlerMessaging.tsx#L77 and https://github.com/CDCgov/prime-reportstream/blob/master/frontend-react/src/utils/misc.ts#L180

From the reporter @snesm


Fix tests

Fixes #10327
post url do |response|
  response.code.should eq 200
end

is OK
(get|put|patch|delete) url do |response|
  response.code.should eq 'banana bananita'
end

does not execute the block and the tests always passes.
For those other verbs, the right way is:
(get|put|patch|delete)_json do |response|
  (...)
end

ping when you are back 😛

Retest this, please.

Please review @juanignaciosl
cc/ @javitonino

Could you have a final look @juanignaciosl ?

Hey @juanignaciosl could you have a look at the test error and maybe suggest something?

@gfiorav take a look at the commit I pushed. This was obviously urgent for this PR but checking login page might be nice in further tests. It's not a redirection but a display, so a helper that checks the presence of a field is the best that I've come up with.


Added new filter for invalid positions

Added a new Filtertype called "NotEarth". It could be used if they have a tracker which submits "valid" marked positions with latitudes or longitudes which doesn't exist on earth... TK5000 does for example

Why do you have 8 commits? Can you please squash your history. Also, you have to fix build issues.

Sorry wasnt planned to do so. I close and open the correct one

Can you please not spam in a pull request. I'm closing it. Please create a new one when everything is fixed.


Names of reviewers are not visible in detailed view

Reviewers signed up as primary and secondary are not visible in the detailed view. Names and the stacking order of these names are not the same from one view to the next. Here is an example: https://apply.opentech.fund/apply/submissions/3865/
Individuals signed up as primary and secondary reviews should be visible in the submission, detailed, and list view.

Duplicate of #1109.


Errors in Installing VeloView on Ubuntu 18.04

Hi,
there is my step to build veloview.

mkdir veloview
cd veloview
git clone https://github.com/Kitware/VeloView.git Veloview-source
cd Veloview-source
git submodule update --init Superbuild/common-superbuild
cd ..
mkdir VeloView-build
cd Veloview-build
cmake ../Veloview-source/Superbuild -DCMAKE_BUILD_TYPE=Release
make -j6
there is error for last step.

the second picture should be the first

i made this steps for installation and it's working .
1- mkdir source_veloview
2- cd source_veloview
3- git clone https://github.com/Kitware/VeloView.git Veloview-source
3- cd Veloview_source
4- git submodule update --init Superbuild/common-superbuild
5- cd ../..
6- mkdir build_VeloView
7- cd build_VeloView
8- cmake ../source_veloview/Veloview-source/Superbuild -DCMAKE_BUILD_TYPE=Release
9- make -j6
10- cd common-superbuild/veloview/build
11- make insatll

it fails at the step9


XDebug on PHPStorm

Hi, I do have a question.
Can someone provide a detailed guide how to setup PHPStorm with xDebug with use of docker4drupal?

@thegreenbot what about running cron from console, or drush commands?

I am asking more about using drush with xdebug

@irmantasp https://github.com/wodby/docker4drupal/issues/113#issuecomment-287960423 it should help you to configure xdebug+phpstorm for any cases (web, cli). And another one useful thread https://github.com/wodby/docker4drupal/issues/127.

@thegreenbot how does webgrind come into play? I added the webgrind container, and cannot for the life of me create a trace or profile of my site that can be viewed in webgrind

@jasonellington you may consider using xhprof instead of webgrind because it much faster.


Config loading broken in 3.9.2?

My config:
{
  "ignorePatterns": [
    {
      "pattern": "^https://pixabay.com"
    }
  ],
  "replacementPatterns": [
    {
      "pattern": "^/",
      "replacement": "{{BASEURL}}/"
    }
  ]
}

If package.json contains:
{
  "devDependencies": {
    "markdown-link-check": "=3.9.0",
    "markdownlint": "^0.25.1",
    "markdownlint-cli2": "^0.4.0",
    "spellchecker-cli": "^4.8.1"
  }
}

I delete node_modules and reinstall.
Then I get the following:
$ ./node_modules/.bin/markdown-link-check -c mdlcconfig.json testfile.md

FILE: testfile.md
  [/] https://pixabay.com/users/succo-96729
  [/] https://pixabay.com
  [✓] https://github.com/shearn89/puppet-toughen
  [✓] https://github.com/shearn89/puppet-helloworld

  4 links checked.
$ ./node_modules/.bin/markdown-link-check -V
3.9.0

the globally installed version works:
$ markdown-link-check -c mdlcconfig.json testfile.md

FILE: testfile.md
  [/] https://pixabay.com/users/succo-96729
  [/] https://pixabay.com
  [✓] https://github.com/shearn89/puppet-toughen
  [✓] https://github.com/shearn89/puppet-helloworld

  4 links checked.
$ markdown-link-check -V
3.9.0

the npx version works:
$ npx<EMAIL_ADDRESS>--config mdlcconfig.json testfile.md

FILE: testfile.md
  [/] https://pixabay.com/users/succo-96729
  [/] https://pixabay.com
  [✓] https://github.com/shearn89/puppet-toughen
  [✓] https://github.com/shearn89/puppet-helloworld

  4 links checked.
$ npx<EMAIL_ADDRESS>-V
3.9.0

If I upgrade to 3.9.2 in package.json, wipe node_modules, and then run npm install, I then get different behaviour:
$ ./node_modules/.bin/markdown-link-check -c mdlcconfig.json testfile.md
FILE: testfile.md
  [✖] https://pixabay.com/users/succo-96729
  [✖] https://pixabay.com
  [✓] https://github.com/shearn89/puppet-toughen
  [✓] https://github.com/shearn89/puppet-helloworld

  4 links checked.

  ERROR: 2 dead links found!
  [✖] https://pixabay.com/users/succo-96729 → Status: 403
  [✖] https://pixabay.com → Status: 403

The npx version fails too:
$ npx<EMAIL_ADDRESS>--config mdlcconfig.json testfile.md

FILE: testfile.md
  [✖] https://pixabay.com/users/succo-96729
  [✖] https://pixabay.com
  [✓] https://github.com/shearn89/puppet-toughen
  [✓] https://github.com/shearn89/puppet-helloworld

  4 links checked.

  ERROR: 2 dead links found!
  [✖] https://pixabay.com/users/succo-96729 → Status: 403
  [✖] https://pixabay.com → Status: 403

$ npx<EMAIL_ADDRESS>-V
3.9.2

Then if I upgrade global version:
$ npm install --global<EMAIL_ADDRESS>$ markdown-link-check -V
3.9.2
$ markdown-link-check -c mdlcconfig.json testfile.md
FILE: testfile.md
  [✖] https://pixabay.com/users/succo-96729
  [✖] https://pixabay.com
  [✓] https://github.com/shearn89/puppet-toughen
  [✓] https://github.com/shearn89/puppet-helloworld

  4 links checked.

  ERROR: 2 dead links found!
  [✖] https://pixabay.com/users/succo-96729 → Status: 403
  [✖] https://pixabay.com → Status: 403

Downgrading fixes the issue.
Looks like it's also in 3.9.1 - I made a repo for testing here.

Hello guys, we are facing the same problem.
We are executing a Circle CI job that runs markdown-link-check with a config file, and it seems that it's ignoring the 'replacementPatterns' configuration set on the file, so it doesn't find the links and returns exit code 1

I think this should be solved by #184. Please try the latest release 3.9.3 and re-open the issue if it's still a problem.

Same problewm here. Scxript isa unable to fetch config file. Regardless its location / name......
https://imgur.com/a/IUUgCdN


chore: Add a component composition root with KumaLogo and GHButton

This PR slightly changes the way we consume components, in that we consume them from a single composition root in @/components. I wanted to try it out with multiple components so used the KumaLogo and the recently added GHButton so see/show how the application level code looks when using multiple components like this.
Notes:

Whilst exporting functions that return the component seems a little redundant (as opposed to just exporting the component), this matches up with the use*() that we use for services and other things, therefore everything works the same.
We have a separate composition root specifically for components, ideally we want a single composition root (we already have @/services, now we have @/components and @/services). Having a separate root for components avoids problems with circular imports which is caused by not being able to use constructor injection for components. There are probably other ways around this, but this is the simplest, and having 2 composition roots that work exactly the same is fine by me.
~I haven't used our service container for components as yet (maybe never). The fact that we can't use constructor injection and take advantage of automatic dependency resolution and injection means using that would be kinda redundant. Although I did notice that using the service container here may help with exporting these functions when/if the amount of these grows. We can try that a later date though, we can change the composition root however we like in the future as long as the exports stay the same, which in turn would mean we don't have to change any application code.~ P.S. Ah of course! It would also be handy to mock out/inject components during testing 🤔
I wasn't quite sure where the new KumaLogo should live, but I dropped it in app/common for now - if we want to change this in the future, we only have the one reference to the import in the @/components composition root.

Signed-off-by: John Cowen<EMAIL_ADDRESS>

I changed my initial approach here half way through see:

P.S. Ah of course! It would also be handy to mock out/inject components during testing 🤔

..in the description.
I subsequently changed this to use our container, which meant I could mock/stub components out during testing.
There is an additional snapshot change here as I'd made <GithubButton> display <github-button-stub> during testing:
https://github.com/kumahq/kuma-gui/blob/master/src/app/App.spec.ts#L22-L24
        // keeps the github-button as a <github-button> instead of a span in
        // the snapshot so its as close to actual usage as possible
        GithubButton: true,

we lost that in https://github.com/kumahq/kuma-gui/commit/2192080503d5ab852ef493ac5c13373a78d22d1e#diff-2d5de16271ef26e8711852e31081b0a215e86861571b601185eee9024c515b29R22, and it was displaying a span again and I couldn't figure out why.
This change puts it back so that the stubbed <GithubButton> displays <github-button> (which is even better than <github-button-stub>) which is what I'd originally wanted, was also an interesting learning and answered a question/query/interest I had around making an empty components easily.
Lastly, I altered createInjections slightly now I know we are only ever going to use the one single container.


signing_options causing malformed JSON request when attempting to send a signature request

Since the merge yesterday any attempt to create a signature request will throw a malformed JSON error when attempting to process the request.
This is due to the json.dumps call during the payload creation on an empty dict. This causes the the payload to contain a null value which is returned as a 400 error.
I have a commit for this issue which I will push later tomorrow.

Tested sending a signature request with version 3.8.9 and this issue does not exist in that version.
print(client.version) is how you can find the version

Tested sending a signature request with version 3.8.9 and this issue does not exist in that version.
print(client.version) is how you can find the version

Tested sending a signature request with version 3.8.9 and this issue does not exist in that version.
print(client.version) is how you can find the version


 First time I've ever seen crazy rendering glitches like that.
Could you provide some more information about WM/Compositor running?
Also does this only happen on scrollback or have you noticed it on master too?

I'm using i3.
I'm not really sure about master since I only started using alacritty as default term after switching to scrollback branch. :/

I don't think it's super necessary to reproduce this on master so it should be fine. Especially since I've never heard this before so it seems unlikely that it's a severe bug introduced in scrollback (especially since there were no rendering changes in scrollback).
Is it always the > glyph which is bugging out? It seems like the laser shoots off at the exact angle of the powerline symbol and might be related to that shape.

I'm not really not sure, before I just noticed the bug before as some sort of line flashing and then disappearing again in the next frame, but I think it has always been going into upper right corner somehow.
for reference, this is the entire line (I hope github doesn't mangle the symbols):
 matthias@t470  ~/vcs/github/rust   master 

I've also seen this a few times, on master, under sway. I don't use powerline, just tmux and the zsh pure prompt (it uses the unicode ❯ as it's prompt symbol).

Powershell or not doesn't make any difference, since all these tools do is printing characters in the shell. I was just using powershell as an example because it makes excessive use of the > character.
I'd be curious to see if anyone ever saw this with a glyph other than >, or if this is purely related to how that works. I'm not quite sure what's so special about > that makes this bug out.

Maybe it has something to do with the char usually having some special background and foreground color?

I just realized, actually you can see that it is the background color being rendered in a wrong way!
So maybe this only happens on chars that have special color AND background color set?

Huh the glyph leaving the cell bounds would have been a lot more reasonable than the background color, since we're getting information from a third party here.
I think the biggest question is how to at least semi-consistently reproduce this bug. Once reproducing it is possible, debugging seems a lot less stressful.
@matthiaskrgr Can you more reliably reproduce this by just printing a ton of > characters? With a higher number of troublesome glyphs, this might show up more often.

In my case with pure prompt, the glyph is the "heavy right-pointing angle quotation mark ornament" (U+276F) and it doesn't have a different background color. I've only seen the glitch very few times and its end doesn't start at the ❯, so i'm not sure if actually has something to do with it. It appears at the lower right corner, but my terminal window size is usually small, and it only stays on screen for about a second.

@chrisduerr  I tried to make a testcase but it doesn't seem to be that easy to repro :(
extern crate colored;
use colored::*;

fn main() {
    let before_glyph = String::from(" ").on_color("blue");
    let glyph = '\u{E0B0}';
    let glyph_string = glyph.to_string().on_color("green").color("blue");
    let after_glyph = String::from(" ").on_color("green");

    let line = &format!("{}{}{}", before_glyph, glyph_string, after_glyph);

    loop {
        std::thread::sleep_ms(2);
        println!();
        print!("\n                                   {}", line);
    }
}

Hmm that's unfortunate, can you get it to break with that testcase at all? I can try to look into it a bit without knowing how exactly it was reproduced, but I doubt that's going to lead anywhere.

It also happens to me from time to time.

Perhaps you could try with https://github.com/jwilm/alacritty/pull/1518 as although it was created to fix a wayland issue, that PR changes the behavior of mesa clearing which might explain why a re-render would fix the issue

Another one with some strange z ordering

@matthiaskrgr did you try with https://github.com/jwilm/alacritty/pull/1518, it's fixed a few display glitches similar to this

No, it conflicts with the scrollback branch unfortunately.

#1518 is long merged and scrollback has also been merged. Does this still happen with the latest master @matthiaskrgr?

I have not seen this since a couple of weeks, I only get the "terminal output fails to update" bug now.

Hopefully that should be resolved with #2438. Though it's likely that this is going to be only in the 0.3.4 release.


Add a trustme keyword to define unsafe code blocks

disagree with this poor idea.

Rendered

trust me this time

unsafe is not enough,we should use unsafe_code_here_is_very_dangerous{
println!("hello,world");
}

Actually, there’s been some serious talk of disambiguating the ‘definition-site’ unsafe from ‘user-site’  unsafe: #2585 contains some discussions (look for trusted).

This PR will be closed at 23:59 1nd April 2020 UTC-12.

And the rustc would have a message like:
error[EAPR1]: trust problem
 --> trustme.rs:2:5
  |
2 |     rustc_trustme_from_this_point_forward_for_unsafe_for_safe_for_imprudent_for_exquisite_in_segfault_and_in_panic_until_bsod {
  |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ I do.
  |
  = note: rustc does not speak truthfully today

error: aborting due to previous error

nice idea!

Why not I_know_what_im_doing_shut_up_ur_fk_mouth_and_I_promise_its_abosulte_safe?

Computers have no emotion and cannot "trust" like us humans do -- I'm against using trustme with the reason being it would be just as misleading as unsafe itself.
As a better alternative, I propose the following:
safe { libc::srand(0); }

Being entirely serious, a trust kind of keyword would remove a lot of confusion people have about unsafe. Because ultimately you're telling the compiler to not check your code, not that it's unsafe. Ideally it would be safe, just that you have to be sure it is.

shut_up_and_take_my_code {
.......code
}

Thank you all for tolerating this April 1st joke.


HBASE-27660 Ignore invalid hostname when getNetworkInterfaces

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 23s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

_ master Compile Tests _

+1 :green_heart:
mvninstall
3m 17s
master passed

+1 :green_heart:
compile
2m 24s
master passed

+1 :green_heart:
checkstyle
0m 32s
master passed

+1 :green_heart:
spotless
0m 48s
branch has no errors when running spotless:check.

+1 :green_heart:
spotbugs
1m 56s
master passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m 34s
the patch passed

+1 :green_heart:
compile
2m 45s
the patch passed

+1 :green_heart:
javac
2m 45s
the patch passed

+1 :green_heart:
checkstyle
0m 38s
the patch passed

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
hadoopcheck
13m 45s
Patch does not cause any errors with Hadoop 3.2.4 3.3.4.

+1 :green_heart:
spotless
0m 38s
patch has no errors when running spotless:check.

+1 :green_heart:
spotbugs
1m 27s
the patch passed

_ Other Tests _

+1 :green_heart:
asflicense
0m  8s
The patch does not generate ASF License warnings.

39m 44s

Subsystem
Report/Notes

Docker
ClientAPI=1.42 ServerAPI=1.42 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5052/3/artifact/yetus-general-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/5052

Optional Tests
dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile

uname
Linux b34fe0820a11 5.4.0-1094-aws #102~18.04.1-Ubuntu SMP Tue Jan 10 21:07:03 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / 4b7815d552

Default Java
Eclipse Adoptium-11.0.17+8

Max. process+thread count
81 (vs. ulimit of 30000)

modules
C: hbase-server U: hbase-server

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5052/3/console

versions
git=2.34.1 maven=3.8.6 spotbugs=4.7.3

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.


Dependency update

Hi guys,
While trying to install epsagon I faced issue with couple outdated dependencies:
epsagon 1.0.46 has requirement future==0.16.0, but you'll have future 0.17.1 which is incompatible.
epsagon 1.0.46 has requirement six==1.11.0, but you'll have six 1.12.0 which is incompatible.

It causes dependency conflict with other packages in my project.
Could you please update requirements if it is possible?

Hi @GreenSmile, definitely - we will make sure it works correctly and update it accordingly.


Wrap text in verification results prompt when it is longer than the screen

At present, when a trace containing a deadlock is found, this trace may be very large and cause the resulting prompt to be much larger than the display. The prompt should instead have a maximum window size, and wrap prompt text.

Instead of wrapping a scrollbar is added if the trace is too long.


Enhancements to DNS name resolution

(This work is part of WEAV-3088).
-- Enhanced the System Layer’s ResolveHostAddress() API to provide an option for controlling the type and ordering of IP addresses to be returned by DNS name resolution.  Available options are: IPv4Only, IPv6Only, IPv4Preferred, IPv6Preferred.
-- Revised the handing of some corner-case DNS errors on sockets platforms.  The net effect is that, in some cases where DNS records of the appropriate type do not exist, ResolveHostAddress() will return INET_ERROR_HOST_NOT_FOUND rather than an empty list of addresses.  This is consistent with how higher layer code treated these cases (specifically WeaveConnection and WeaveBinding).
-- Consolidated the implementation of ResolveHostAddress() on sockets platforms between the synchronous and asynchronous implementations.
-- Rewrote TestDNSResolution to cover the new address type functionality, plus other aspects of the DNS API that were not fully tested in the previous incarnation.
-- Enhanced TestDNSResolution to support testing using LwIP.

Pushed revised commit containing:
-- Fixes to TestDNSResolution for testing on LwIP.
-- Better argument checking for DNSOptions.
-- Additional comments and editorial changes.

Pushed a new version of this change that revises the way addresses are returned to the application in the case where the number of addresses returned by the name server exceeds the number of addresses requested by the application.
In the new code, if the application requests both IPv4 and IPv6 addresses, and both are present in the response, the result passed back to the application will always include at least one of each type.  This ensures the application will try both forms when attempting to communicate with the host.

Rebased against latest master.


Promote: pipenv, poetry, flit

Users of Fedora can dnf install pipenv, poetry, flit. We should promote that.

https://fedoramagazine.org/install-pipenv-fedora/

@decathorpe Hey, are you interested in creating something like this Fedora Magazine article about Poetry? We could then link to it.

@hroncok hm. I was thinking about waiting for poetry 1.0.0 before announcing anything, and the release shouldn't be too far off (poetry is at 1.0.0b3 now)

Poetry is 1.0.10 now. I don't see article about Poetry in fedora magazine. I am interesting in creating article about Poetry. How can I login fedora magazine?

Proposing Articles for Fedora Magazine
Contributing as a Fedora Magazine Writer

https://fedoramagazine.org/how-to-use-poetry-to-manage-your-python-projects-on-fedora/

Nice!
Side note: I've noticed the The structure of a project created with Poetry looks like this: part misformats __init__.py as bold init.py.

Yes, I notice now sorry...


NavBar and MainPage structure

NavBar

Home/Main page.
"Reserve" form.
"My reservations".
Add a room.
Delete room.

Main Page

The user can see a list of the rooms

I added the pagination functionality  and fixed the bug


Storage refactor

What is this PR about
indexed db now is only choice for storage layer, which may cause some problems:

get key value pair using indexed has worse performance than get using localstorage
one requirement for desktop users is green lite version (which means you can copy-parse directory to use software anywhere), so indexed db storage will replaced with file or sqilte api.

so i'm trying to move all call to indexed db to models directory, by call model member functions. It will seperate business logic from stoarge layer and we can have better control about peresistancy problems.
Progress

[x] settings
[ ] playerlist
[ ] tracks

v3 is delayed for this pr. Because migrate really need so much modification and testing.
For v3 publish in time, I'm consider that avoid migrate in v3, still use v2 storage, which makes it more easy to publish.
So this PR will be paused unless plan changes.


Better handling on non apt distros

Installing dependencies... Hold on. Linux detected. Updating system. ./bin/linux_dependencies.sh: Zeile 21: apt-get: command not fount. Installing packages. ./bin/linux_dependencies.sh: line 28: apt-get: command not found. ./bin/linux_dependencies.sh: line 28: apt-get: command not found. ./bin/linux_dependencies.sh: line 28: apt-get: command not found. ./bin/linux_dependencies.sh: line 28: apt-get: command not found. ./bin/linux_dependencies.sh: line 28: apt-get: command not found. ./bin/linux_dependencies.sh: line 28: apt-get: command not found. ./bin/linux_dependencies.sh: line 28: apt-get: command not found. Done installing packages. Cheers.
I understand that there is probably no need to add support for other package managers but finishing withDone installing packages. Cheers. is probably not the best choice xD
Also please add to the README that only apt is supported as of now
Thanks man for the great tool

but finishing with Done installing packages. Cheers. is probably not the best choice xD

I don't have experience with bash scripting that's why it is linear and does not have checks and always ends with that.
I can quickly add support for your distro also, but you need to help me with some things.

Your distro name : run in terminal $(uname) but this must have returned Linux that's why you received "Linux Detected"
Your package manager (alternative to apt).
Alternatives to following : adb curl grep tar openjdk-11-jdk p7zip-full scrcpy

You could try something like this

if [ -f /etc/redhat-release ]; then
redhat_install
elif [ -f /etc/debian_version ]; then
debian_install
elif [ -f /etc/arch-release ]; then
arch_install
fi

Distro: Arch
Package manager: Pacman
Packages: android-tools, curl, grep, tar, jre11-openjdk-headless, p7zip (scrcpy is not in the official repo)
And you should probably check for python aswell
the syntax would be something like sudo pacman -S android-tools curl grep tar jre11-openjdk-headless p7zip --noconfirm
tbh the installer doesn't need to cover all distros but better specifying the requirements in the readme would help (extreamly 7z as it is currently not mentioned)

I wanted to make it as noob friendly as possible. That was the reason for automating the process of linux dependencies installation. In earlier stages it was mentioned in readme as you're saying.
But since there are so many distros and their PM, and variations in packages' names I should leave it like that and update readme itself as you're saying.
Leaving this open until readme is updated.


Convert module to v3 format

@JeffreyDavidsz would you mind taking a look? Or #7 incorporates this and the CI changes.


Fix type loss with Comapped and a few other typeclasses

Similarly to https://github.com/milessabin/shapeless/pull/621, the implicit recursive case of Comapped lacks an explicit type argument for its tail's Out. This hurts type inference in some cases. This PR adds the type argument in order to fix this problem.
Although Comapped was my immediate problem, I noticed several other typeclasses that appear to have the same problem for which this relatively mechanical fix can be trivially applied. I included a few more of them in this PR, but there are still several others (in general, wherever a recursive implicit case refers to a type member of its implicit argument, type inference can be improved by eliminating that reference and lifting it to a type argument to the implicit derivation). I'm happy to make an effort to apply this change more universally, or users can just continue to make PRs as their need arises. Let me know what you think @milessabin.

Note: this fix does not seem to work trivially for typeclasses involving Coproduct. I'm not sure if this is due to CNil not existing, but when I tried to apply this for ToSum specifically it caused some tests to fail.

 Many thanks ... merging :-)


prevent screensaver while tv is active

Hi, I'm using iPlayer on Ubuntu desktop 18.04 (latest and patched) and noticed that screensaver activates after the set time regardless of TV is active and playing. I failed to find any preferences where I could prevent this. Any suggestions?
Thank you.
Ivo

Assuming you're using the default GNOME-based desktop, install the Caffeine extension. Then Gnome will automatically disable the screensaver whenever any app is displayed in full-screen mode. To disable the screensaver at any other time simply click the "cup" icon in the top bar, and click it again when you're done.
This is the normal GNOME solution to this problem.

Thank you for the fast reply. I did already, but though there might be some settings in the app somewhere.
I noticed youtube has a similar feature and assumed iPlayer might have as well, hidden somewhere. Cheers.

YouTube has that? Where?

I see it when I'm playing something on youtube using Chrome on Ubuntu (all latest)... It seems to prevent the screensaver from starting, but has other issues ;-)

Oh, I thought you meant the Nuvola YouTube app.

Hello @ivostoykov, thanks for your feature request. I hope it will be possible once Nuvola is ported to QtWebEngine (#583). Anyway, I'm closing this issue in favor of #503.


Better check for environment (Node or browser)

Sometimes global object "module" can exist in client-side apps.

Can you please re-open this PR against the develop branch?


Client side improvements

These changes make it so that CoffeeCoffee works better on the client side. Everything is namespaced and things work. For more details, see the issue I posted earlier:
https://github.com/showell/CoffeeCoffee/issues/3

Hi, I won't have a chance to look at this today, but I should have time tomorrow.
Sent from my iPhone
On Nov 27, 2011, at 4:23 AM, gkz<EMAIL_ADDRESS>wrote:

These changes make it so that CoffeeCoffee works better on the client side. Everything is namespaced and things work. For more details, see the issue I posted earlier:
https://github.com/showell/CoffeeCoffee/issues/3
You can merge this Pull Request by running:
git pull https://github.com/gkz/CoffeeCoffee master
Or you can view, comment on it, or merge it online at:
https://github.com/showell/CoffeeCoffee/pull/4
-- Commit Summary --

getting things working on the client

-- File Changes --
M builder.coffee (15)
M builder.js (18)
M client_side/client.coffee (4)
M client_side/client.htm (3)
M client_side/client.js (4)
A coffeecoffee.coffee (1)
A coffeecoffee.js (6)
M indenter.coffee (7)
M indenter.js (9)
M nodes_to_json.coffee (11)
M nodes_to_json.js (9)
M round_trip.coffee (13)
M round_trip.js (16)
M runtime.coffee (6)
M runtime.js (12)
M runtime2.coffee (3)
M runtime2.js (9)
-- Patch Links --
https://github.com/showell/CoffeeCoffee/pull/4.patch
https://github.com/showell/CoffeeCoffee/pull/4.diff

Reply to this email directly or view it on GitHub:
https://github.com/showell/CoffeeCoffee/pull/4

Nice work!  I'm interested to hear how you're using it.

CoffeeCoffee is now a critical part of a project I am working on (thank you very much, and I hope you will keep it alive!). I won't go into too much detail as I'm still working on it, but basically I need to only partially compile bits of CoffeeScript (nested portions). The way to do that is to compile everything to the AST, analyze it, then turn parts of it back into CoffeeScript - and all of this in the browser. It sounds a little weird, but once I come close to finishing up my project, I'll put it up online and send you a link.

Sounds good, I'd really love to hear more. I have some outside-the-box ideas on what CoffeeCoffee could do, and it sounds like some of them might resonate with what you're doing. On a trite level, I really think of JS and CS as cousins of each other, where JS just happens to be the runtime target today in 2011. In the future I could see code editors being really good at switching between JS and CS as representations of some underlying language. I say that the idea is a little trite, because in a way it's just another take on a CLR. But I'm thinking more in the dimension of how people look at code, not so much the dimension of how different programs get run.
At the AST level, I've thought of paradigms where you might choose to write code in a fairly verbose style, with lots of explicit local variables, but then you can turn down the verbosity with automatic inlining in the editor.
Anyway, I'd love to hear more thoughts from you if you're up for a little brainstorming.

From: gkz<EMAIL_ADDRESS>To: showell<EMAIL_ADDRESS>Sent: Tuesday, November 29, 2011 5:12 PM
Subject: Re: [CoffeeCoffee] Client side improvements (#4)
CoffeeCoffee is now a critical part of a project I am working on (thank you very much, and I hope you will keep it alive!). I won't go into too much detail as I'm still working on it, but basically I need to only partially compile bits of CoffeeScript (nested portions). The way to do that is to compile everything to the AST, analyze it, then turn parts of it back into CoffeeScript - and all of this in the browser. It sounds a little weird, but once I come close to finishing up my project, I'll put it up online and send you a link.

Reply to this email directly or view it on GitHub:
https://github.com/showell/CoffeeCoffee/pull/4#issuecomment-2953457

Hi, sorry for the late response, I've been busy with exams. To be honest, I didn't even know what an AST was before I came across the problem I was having - I am a self taught programmer (those exams are not for computer science). I don't know much about the subject so I don't know of how much I can contribute to brainstorming - though if there is any way I can help I would love to.

No prob on the late response. I'm still interested in hearing more thoughts from you on your problem; the fact that you're self-taught might actually be an asset when it comes to brainstorming. :)
If you're busy with other stuff, no worries. Thanks again for the patch. I've been kind of busy with other stuff myself, so I have kind of put CoffeeCoffee off to the side for now.

From: gkz<EMAIL_ADDRESS>To: showell<EMAIL_ADDRESS>Sent: Tuesday, December 13, 2011 11:23 PM
Subject: Re: [CoffeeCoffee] Client side improvements (#4)
Hi, sorry for the late response, I've been busy with exams. To be honest, I didn't even know what an AST was before I came across the problem I was having - I am a self taught programmer (those exams are not for computer science). I don't know much about the subject so I don't know of how much I can contribute to brainstorming - though if there is any way I can help I would love to.

Reply to this email directly or view it on GitHub:
https://github.com/showell/CoffeeCoffee/pull/4#issuecomment-3136389

I've finished my exams and am on a break until the new year, so I have begun working on my project a lot more.
Essentially I am using CoffeeCoffee to transform parts of the CoffeeScript AST back into CoffeeScript. The closer the transformation is to the original source, the better for me.
BTW a new version of CoffeeScript has come out, 1.2.0

Sounds good. I'm thinking about writing a CS-to-Python converter with CoffeeCoffee.

From: gkz<EMAIL_ADDRESS>To: showell<EMAIL_ADDRESS>Sent: Sunday, December 18, 2011 11:24 PM
Subject: Re: [CoffeeCoffee] Client side improvements (#4)
I've finished my exams and am on a break until the new year, so I have begun working on my project a lot more.
Essentially I am using CoffeeCoffee to transform parts of the CoffeeScript AST back into CoffeeScript. The closer the transformation is to the original source, the better for me.
BTW a new version of CoffeeScript has come out, 1.2.0

Reply to this email directly or view it on GitHub:
https://github.com/showell/CoffeeCoffee/pull/4#issuecomment-3200099

That sounds interesting - that would offer an interesting alternative to node for CS backend code.

I read this Hacker News comment today and was reminded of your earlier post:

On a trite level, I really think of JS and CS as cousins of each other, where JS just happens to be the
runtime target today in 2011. In the future I could see code editors being really good at switching between
JS and CS as representations of some underlying language. I say that the idea is a little trite, because in
a way it's just another take on a CLR. But I'm thinking more in the dimension of how people look at code,
not so much the dimension of how different programs get run.

As per the HN post, what if the underlying language you talk of is what runs in every browser today, JavaScript - and IDEs easily switched between different representations of it as either JS, CS or others... Is this what you were thinking of?


an interesting idea,How to support?

found every new block use different address?
like solo ?

wontfix, you can have a script that once a block has been found, it would stop z-nomp and use a new address from the daemon.


FAP: Avoid doing IO with latch

What problem does this PR solve?
Issue Number: ref https://github.com/pingcap/tiflash/issues/8382
Problem Summary:
Previously, the ctor of CheckpointIngestInfo mixed with IO in PageStorage, this lead to we will do IO with memory latch on ingest_info_mu. This is a bad design that would slow down the FAP process.
What is changed and how it works?

Simplify the ctor of CheckpointIngestInfo, make all the member const once created
Do IO in PageStorage without memory latch on ingest_info_mu

Check List
Tests

[ ] Unit test
[ ] Integration test
[ ] Manual test (add detailed scripts or steps below)
[ ] No code

Side effects

[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Breaking backward compatibility

Documentation

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Changes MySQL compatibility

Release note

None

/run-all-tests

/approve


Low frame rate in Asteroids build with Vulkan API

Describe the bug
"Asteroids" sample built for Vulkan API has significantly lower FPS than for DirectX API in multi-threaded rendering scenario.
Steps To Reproduce
Steps to reproduce the behavior:

Run "Asteroids" sample built for DirectX, set scene complexity to 8 (35000 asteroids) => get ~294 FPS
Run "Asteroids" sample built for Vulkan, set scene complexity to 8 (35000 asteroids) => get ~77 FPS

Expected behavior
Comparable FPS is expected for DirectX and Vulkan version for the same application with equal parameters.
Desktop (please complete the following information):

OS: Windows 11
Version 23H2
HW: Intel Core i7-7820X, NVidia GeForce 2070 SUPER
Build environment Visual Studio 2022

Rootcause
This issue is tracked and fixed in MethanePowered/MethaneKit#130

FPS after issue was fixed in MethaneKit:


CSV and SHP upload fail

Thank you for an amazing tool!
I have tried the CSV or Shapefile upload options but both seem to throw an error when I create project. 'Error retrieving the project info. See console for details.'
Here are the test cases:
CSV: https://collect.earth/collection/1820
Shapefile: https://collect.earth/collection/1821
Attaching the ZIP shapefile as well. Thank you for the help.
bee_habitat_sample.zip

SHP files require both a plot and sample file.  Could you please provide both?

Ok I did not know that. I have now tried using both plot and sample file and it still seems to fail. I am attaching the files here. Used to try make this project. https://collect.earth/collection/1937
buffer.zip
point.zip

It looks like your samples are missing "sampleid"

The newest release will give you better feed back and prevent bad projects to be created.


Change privacy on project with publicly editable wiki [OSF-5482]

Purpose
Allow public projects with publicly editable wikis to be made private via the API.
Closes [OSF-5482]
Changes
Check within push_status_message() to see if we're running inside a Flask context. If so, under most circumstances let the message go, unless it's an error, in which case raise a 400 and pass along the error message.
Also, test all that, including the case directly related to the purpose. h/t to @mfraezz for the mock code in the unit test.
Side effects
push_status_message() isn't actually supposed to be called from anything that the API can get to, but it's littered throughout the model. If it failed, it would 500 for sure, so this is almost certainly better, but we only have the one case right now. The worst would be if someone were using 'warning' when it's really an error or something, because then it should error but might fail silently. Probably not, because if it fails it should fail anyways. So it should be fine, but.

LGTM. RTM whenever the build passes :sweat_drops:


docs: tweak readme

Fixes: https://github.com/ratatui/ratatui/issues/1417

The main goal of this is to move the info on how to get started up a bit and to fill out some info / tighten up some of the language.

Doc Test failures fixed in https://github.com/ratatui/ratatui/pull/1421