python311Packages.types-pytz: 2<IP_ADDRESS> -> 2<IP_ADDRESS>

Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 249198 run on x86_64-linux 1

18 packages failed to build:

openai-full
openai-full.dist
python310Packages.layoutparser
python310Packages.layoutparser.dist
python310Packages.pandas-stubs
python310Packages.pandas-stubs.dist
python310Packages.pdfplumber
python310Packages.pdfplumber.dist
python310Packages.unstructured-inference
python310Packages.unstructured-inference.dist
python311Packages.layoutparser
python311Packages.layoutparser.dist
python311Packages.pandas-stubs
python311Packages.pandas-stubs.dist
python311Packages.pdfplumber
python311Packages.pdfplumber.dist
python311Packages.unstructured-inference
python311Packages.unstructured-inference.dist

18 packages built:

home-assistant-component-tests.ridwell
home-assistant-component-tests.simplisafe
python310Packages.aioridwell
python310Packages.aioridwell.dist
python310Packages.django-stubs
python310Packages.django-stubs.dist
python310Packages.simplisafe-python
python310Packages.simplisafe-python.dist
python310Packages.types-pytz
python310Packages.types-pytz.dist
python311Packages.aioridwell
python311Packages.aioridwell.dist
python311Packages.django-stubs
python311Packages.django-stubs.dist
python311Packages.simplisafe-python
python311Packages.simplisafe-python.dist
python311Packages.types-pytz
python311Packages.types-pytz.dist

Fixes for failures:

pandas-stubs https://github.com/NixOS/nixpkgs/pull/249289

Result of nixpkgs-review pr 249198 run on x86_64-linux 1

36 packages built:

home-assistant-component-tests.ridwell
home-assistant-component-tests.simplisafe
openai-full
openai-full.dist
python310Packages.aioridwell
python310Packages.aioridwell.dist
python310Packages.django-stubs
python310Packages.django-stubs.dist
python310Packages.layoutparser
python310Packages.layoutparser.dist
python310Packages.pandas-stubs
python310Packages.pandas-stubs.dist
python310Packages.pdfplumber
python310Packages.pdfplumber.dist
python310Packages.simplisafe-python
python310Packages.simplisafe-python.dist
python310Packages.types-pytz
python310Packages.types-pytz.dist
python310Packages.unstructured-inference
python310Packages.unstructured-inference.dist
python311Packages.aioridwell
python311Packages.aioridwell.dist
python311Packages.django-stubs
python311Packages.django-stubs.dist
python311Packages.layoutparser
python311Packages.layoutparser.dist
python311Packages.pandas-stubs
python311Packages.pandas-stubs.dist
python311Packages.pdfplumber
python311Packages.pdfplumber.dist
python311Packages.simplisafe-python
python311Packages.simplisafe-python.dist
python311Packages.types-pytz
python311Packages.types-pytz.dist
python311Packages.unstructured-inference
python311Packages.unstructured-inference.dist


Add noop change to trigger previews

Something went wrong with PR preview build please check

Preview is available here:http://sep24-reference-ui-pr3.previews.kube001.services.stellar-ops.com/


Add MDM profile (NSUserDefaults) support

This giant PR on nudge python added support for mobileconfigs: https://github.com/macadmins/nudge-python/pull/49
We need to add this support as well, so things can be managed via MDM.

Did some research from this mornings chat, looks like we could do something like
let asyncronousSoftwareUpdate = UserDefaults.standard.value(forKey: "asyncronousSoftwareUpdate") as? Bool ?? nudgePreferences?.optionalFeatures?.asyncronousSoftwareUpdate ?? true as we can indeed chain the nil coalescing.
Not sure how it will react when reading in the config as it would default to false not nil if the key is there but with no value. Could end up with some unexpected behaviour.

It took me two days of banging my head against the wall but it's now all implemented. I need testers though to try if keys are missing not passed, etc etc.


Allow mountpoint-s3-crt-sys to link to an existing CRT installation

Some customers may already have a build of the CRT they'd like to use with Mountpoint rather than building the one we include; for example, one installed by their package manager. This change lets us specify environment variables pointing to an existing CRT build rather than always building it ourselves.
There's not a great versioning or compatibility story for CRT shared libraries, so this change should only be used when the customer can guarantee a suitable CRT version will be linked.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and I agree to the terms of the Developer Certificate of Origin (DCO).

Should we document the usage of MOUNTPOINT_CRT_LIB_DIR and MOUNTPOINT_CRT_INCLUDE_DIR somewhere (other than in the comment on main)?

Should we document the usage of MOUNTPOINT_CRT_LIB_DIR and MOUNTPOINT_CRT_INCLUDE_DIR somewhere (other than in the comment on main)?

I'd prefer not to document it for now, given the compatibility concerns around CRT versioning, and since (AFAIK) there are no public prebuilt distributions of the CRT beyond what's embedded in the SDKs.

I wonder how we can be sure that the build will be working correctly if we set these variables. Is it possible to add a new CI that has the CRT pre-installed then try to build and test Mountpoint with this approach?

Yeah, good idea. Let me look into this in a separate PR, as I think it's going to end up involving duplicating some of the CRT repos' CI scripts.


Provided by  when the provided logo is large

That's from a Museum of Science and Discovery opportunity: https://beta.sciencenearme.org/museum-store-sunday


Update ibm_catalog.json

Description

Release required?

[ ] No release
[ ] Patch release (x.x.X)
[ ] Minor release (x.X.x)
[ ] Major release (X.x.x)

Release notes content

Run the pipeline
If the CI pipeline doesn't run when you create the PR, the PR requires a user with GitHub collaborators access to run the pipeline.
Run the CI pipeline when the PR is ready for review and you expect tests to pass. Add a comment to the PR with the following text:
/run pipeline

Checklist for reviewers

[ ] If relevant, a test for the change is included or updated with this PR.
[ ] If relevant, documentation for the change is included or updated with this PR.

For mergers

Use a conventional commit message to set the release level. Follow the guidelines.
Include information that users need to know about the PR in the commit message. The commit message becomes part of the GitHub release notes.
Use the Squash and merge option.

/run pipeline

:tada: This PR is included in version 2.0.6 :tada:
The release is available on:

GitHub release
v2.0.6

Your semantic-release bot :package::rocket:


cannot change background colour

Running the latest atom and platformio, I can't seem to alter the background for some reason. It stays pitch black.
Chanigng the background field in the less field yielded no changes even when restarting atom. Changing the black colour from the package GUI settings, only affected the text.
I really need a more detailed doc for the json settings. Where can I find this?
Tbh, being able to set the colours to the same as your terminal, would be great!

Depends what theme you have set in platformio-atom-ide-terminal settings.
If using say one dark and wanted to chnage the background you would add this to the Atom stylesheet.
.one-dark {
  background-color: #353535 !mportant;
}

But note, any color changes dont apply to ANY/ALL open terminals, close them and re-open them to see changes.
Also applicable read https://github.com/platformio/platformio-atom-ide-terminal/issues/578#issuecomment-407666169


Fix.mock from frontend

Describe your changes
Resolves bug 832.

Changes the front-end feature to use correct path and body based on disaster-type
Renames all 'default' scenarios to 'trigger'
Does not deal with mocking more scenarios than just trigger and no-trigger from front-end, as that goes beyond the scope of merely fixing this bug.

Checklist before requesting a review

[x] I have performed a self-review of my code
[ ] I have added tests wherever relevant
[x] I have made sure that all automated checks pass before requesting a review

Notes for the reviewer

All API-tests succeed locally (when changing the hostname back to use port 3000 temporarily)
I have checked from front-end all disaster-types trigger and no-trigger from at least one country.

I did not pull the branch code so it didn't have the fix.


New Command: pp website webfile list

Closes #6262
Add new command for listing webfiles from Powerpages website

Thanks, we'll try to review it ASAP!

@ktskumar  I added the hacktoberfest-accepted label to this PR which means that this PR will count as done for the Hacktoberfest event. So if you participate in this event it will get you unblocked and it allows us to merge this PR later when we catch up 👍
Thanks for your support and awesome contribution 👏 You Rock 🤩


Codecoverage tool fails easily; some lines accidentally covered

In a recent PR https://github.com/bluesky/ophyd/pull/1148 The codecoverage patch job was failing, although all the lines added in the PR had been tested.
The coverage on master for ophyd/ophyd/areadetector/paths.py is currently 91.97%. However, on the PR this same file has a lower coverage, although the PR did not change any of the lines pertaining to these tests or the source code. In fact, the PR concerns itself with ophyd v2 ,and the test coverage drop is for ophyd v1 functionality.
On further inspection, the last latest ophyd release had a codecoverage report with the same code coverage of this file as the PR's code (seen here: https://app.codecov.io/gh/bluesky/ophyd/commit/51679551aab7798424124509d48f7a006e73ca15/blob/ophyd/areadetector/paths.py). It seems like whether or not lines 73-80 get covered in the codecov report is entirely random, and looking at the code it makes sense; this bit of code will only get called if a signal.set call doesn't immediately line up with the value one is trying to set it with. i.e. if for some reason setting the signal takes a bit of time, this block of code will get called.
So, this issue is to propose two fixes:

Add an actual test for these lines of code, so that the patch change for the above PR passes,
Introduce tolerances for code coverage (+/- 0.1%) within which the jobs will still pass. Considering the sheer volume of tests involved, this is not the first instance where someone changing bits of ophyd code has codecov failing even though they've covered all their new lines of codes in tests.

Agree with the fixes, but do we know why this is happening? I don't think I've seen it on other repositories.

The percentage decrease in patch is, in my opinion, totally random. I'm sure if I re-ran the CI on master a few times I'd get one CI job where (if coverage were also rerun, and the PR that this issue arose from) the patch change would be 0%.
The offending lines are these:
    signal.put(val)
    deadline = ttime.time() + timeout if timeout is not None else None
    current_value = signal.get()

    while not path_compare(current_value, val, semantics=path_semantics):
        logger.debug(
            "Waiting for %s to be set from %r to %r...", signal.name, current_value, val
        )
        ttime.sleep(poll_time)
        if poll_time < 0.1:
            poll_time *= 2  # logarithmic back-off
        current_value = signal.get()

this is inside ophyd/areadetector/paths.py.
So basically the while loop is never entered if everything works smoothly. If things are a bit slow, however (e.g. runners are a bit slower than usual... takes a while for caput to actually complete) then the while loop might well be entered.

Just to confirm this, I'm going to rerun the CI on master a few times... hold on...


Release new version so mineflayer can be updated to support bun

Jose was removed in https://github.com/PrismarineJS/prismarine-auth/pull/103
Is there anything stopping a new version release so that bun can be used with mineflayer?
current workaround
This snippet in projects package.json currently makes mineflayer work with bun
"resolutions": {
  "prismarine-auth": "https://github.com/PrismarineJS/prismarine-auth.git#e70f42e"
}

/makerelease patch

Done


feat: implement opacity utility

:tada: This PR is included in version 2.1.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[Feature] Remove the permission to patch pods for autoscaler

Search before asking

[X] I had searched in the issues and found no similar feature requirement.

Description
I didn't find the code to patch pod in ray-autoscaler. So I think maybe the permission to patch pods can be removed.
Please correct me if autoscaler has to patch pods.
Use case
No response
Related issues
No response
Are you willing to submit a PR?

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

@KunWuLuan can you run a quick test where you remove patch pods permission and then see if autoscaling works?

Yes, I tested the functionality after remove the permission of patch pods and the autoscaler seemed to work well. @andrewsykim .

@KunWuLuan how do you test it? The autoscaler uses patch here: https://github.com/ray-project/ray/blob/52b07685e744e5d72a6c0691e015a74aebb9bca9/python/ray/autoscaler/_private/kuberay/node_provider.py#L531

@KunWuLuan how do you test it? The autoscaler uses patch here: https://github.com/ray-project/ray/blob/52b07685e744e5d72a6c0691e015a74aebb9bca9/python/ray/autoscaler/_private/kuberay/node_provider.py#L531

This is patching RayCluster, not Pod right?

This is patching RayCluster, not Pod right?

Oh yeah, I don't read the issue description carefully. @KunWuLuan would you mind opening a PR to fix it? Thanks!


Fixed lint's unnecessary semicolon error

What kind of change does this PR introduce?
Lint Error Fix and PDF/A1 Test fix

Checklist:

[ ] Unit Tests N/A
[ ] Documentation N/A
[ ] Update CHANGELOG.md N/A
[X] Ready to be merged

This change fixes an unnecessary semicolon lint error.

@blikblum Hey there, I noticed #1395 broke the lint and a change that was made regarding the location of the colour profile broke its test too. This PR fixes both issue and tests seem to pass again, I hope you can merge it if you're happy with it :) Thanks!


Add Sub1MulPattern

Codecov Report
Attention: Patch coverage is 93.98340% with 29 lines in your changes are missing coverage. Please review.

Project coverage is 76.54%. Comparing base (1bf171c) to head (7bf1cef).

Files
Patch %
Lines

...ental_experiment/torch_exp/patterns/onnx_matmul.py
88.29%
11 Missing :warning:

...ental_experiment/torch_exp/patterns/onnx_rotary.py
90.41%
7 Missing :warning:

...rimental_experiment/torch_exp/patterns/onnx_mul.py
95.34%
2 Missing :warning:

...ntal_experiment/torch_exp/patterns/onnx_reshape.py
90.47%
2 Missing :warning:

...rimental_experiment/torch_exp/patterns/onnx_sub.py
95.55%
2 Missing :warning:

...al_experiment/torch_exp/patterns/onnx_unsqueeze.py
92.00%
2 Missing :warning:

...imental_experiment/torch_exp/patterns/onnx_cast.py
94.73%
1 Missing :warning:

...ental_experiment/torch_exp/patterns/onnx_expand.py
95.45%
1 Missing :warning:

...al_experiment/torch_exp/patterns/onnx_transpose.py
97.29%
1 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #61      +/-   ##
==========================================
+ Coverage   76.03%   76.54%   +0.50%
==========================================
  Files          42       51       +9
  Lines        6018     6117      +99
==========================================
+ Hits         4576     4682     +106
+ Misses       1442     1435       -7

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Added BhaiLang

https://github.com/DulLabs/bhai-lang

There will be another repository for esoteric languages.


make it compatible with the latest Nim

On my most recent project, I need to run on nim 0.20.0. Unfortunately, that means this fix is needed.
@SSPkrolik , could we get this change merged and moved upstream to nimble as ver 0.3?

@yglukhov Do you have commit access? Getting this ready for nim 1.0 would be very useful. Unfortunately, I've not seen much activity @SSPkrolik for a while.


Long range expressions are not broken onto seperate lines

This gives a line exceeded max length failure.
&mut self.stack.values[(range.start + self.frame.offset) as usize..(range.end + self.frame.offset) as usize]

Simpler example
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA..AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

Closing since this is fixed on the current master.
    &mut self.stack.values[(range.start + self.frame.offset) as usize..
                               (range.end + self.frame.offset) as usize];


Filesystem adapter

This is sort of a meta-issue but I have a use case for an adapter that uses the file system as a database, tentatively named fortune-fs. Ideas:

Store individual records on disk as files, with a simple directory structure: /:type/:id.
Encode records with MessagePack. This is not only for space saving but makes encoding/decoding special types like buffers and dates easier.
Extend the memory adapter. On connecting, read all records and load them in memory. Creating, updating, and deleting records would correspond to files.

There is already a NeDB adapter, but I think that it has some major issues:

NeDB stores data in a single file and is append-only, when updating or deleting things it just appends a changelog and it has to stop the world to rewrite the whole file to actually do it.
It has too many dependencies (10+ MB), I would prefer something smaller that relies mostly on Node.js standard modules if possible.

It exists https://github.com/fortunejs/fortune-fs


Form area

This PR has:

[ ] Contact form html structure
[ ] Contact form css styling and edits.

This second review request has:

[ ] Edits to the contact form text area attributes and name input field.


Add as_default() to MonitoredSession, MonitoredTrainingSession and SingularMonitoredSession.

Equivalent to tf.Session.as_default(), allows refetching the session from elsewhere in code using tf.get_default_session().
Notes:

(additive) public API change.
If there is a better way to get the current session when using these tf.Session wrappers, this may be unnecessary. I just couldn't find it.

Can one of the admins verify this patch?

Hmm, just noticed this comment saying a MonitoredTrainingSession cannot be set as the default session. No mention of why though. Perhaps there's some unspecified assumption that this PR would break?

@darrengarvey I believe that this is because MonitoredTrainingSession isn't a Session, it's something that wraps a Session, so does not implement the interface that as_default() would require.  If it was a subclass of Session, this would be possible, but I think by design it is not.  :(


Font color linear gradient

Hi,
Am I missing something or doing something wrong, but I'm not able to set a font color as gradient.
I tried following
.myTest {
        color: linear-gradient(to bottom, #feb79c, #ff65a9);
 }

Which is interpreted by Chrome as "Invalid property value"
Thx in advance for your help

color can't be a gradient. CSS considers gradients to be like images. See: https://developer.mozilla.org/en-US/docs/Web/CSS/color
This is unrelated to Bourbon, but you can make text a gradient using the -webkit-background-clip or the mix-blend-mode properties. It looks like browser support might be decent for the former, though you'd want a fallback. None in IE for mix-blend-mode.

mix-blend-mode: https://css-tricks.com/how-to-do-knockout-text/#article-header-id-4
background-clip: http://creative-punch.net/2014/02/colorful-gradient-text-css3/

Thx for the nice detailed answer, understood.
I build an app for iOS and Android. Gonna try my luck with following piece of code using  -webkit-background-clip as you proposed, otherwise gonna have to use a svg or something like that.
    @include linear-gradient(to bottom, $fluster-peach1, $fluster-peach3);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;

best regards


Create Droplet from snapshot

I'm submitting a ...
[ ] bug report
[x] feature request
[ ] question about the decisions made in the repository
[x] question about how to use this project

Summary
Hello!
First, I'd like to say great work here, this is really amazing.

I'm new around here and I'm not sure if this is possible or not already in this project and probably I just have not seen it.
I'd like to be able to create a droplet from a snapshot reference

Other information (e.g. detailed explanation, stacktraces, related issues, suggestions how to fix, links for us to have context, eg. StackOverflow, personal fork, etc.)

It is indeed possible! :) You can use the createNewDroplet method and pass your snapshot id in the image parameter. This will create a new droplet from your snapshot.

Great!!! Thank you

Hopefully you find digitalocean-js helpful to you! :) And as always, open an issue if you run into any other problems!


Add LaTeX splitter

This PR is adding a LatexTextSplitter, closing #1731
It's based on the MarkdownTextSplitter, but the separators are adjusted.
I also added an entry for it to the according test_examples.ipynb
One issue I have, is that I can't run the complete notebook without an error in a later part, I'll open up a new issue for that.

P.S. My twitter is also @Janldeboer  :)


Support for prepared statements

This is more important than we have been treating it, because there are many drivers that do this under the hood without clients explicitly asking for it. From https://github.com/liquidata-inc/go-mysql-server/issues/169

I know I gave this a thumbs-up, but I decided to also chime in and say that I ran into this 2 days ago and wasn't able to use go-mysql-server because of it 😞
Not sure how much work it is to implement, but I would love to render my unit tests untethered to a database installation or docker container.

After #177 I decided to try again, ran into this one once more and wanted to give a little more context.
I use golang-migrate for migrations, including tests.  That package, in turn, uses the mysql driver.  When I attempt to perform a migration I get:
INFO: NewConnection: client 1
INFO: ConnectionClosed: client 1
ERROR: mysql_server caught panic:
prepared statements are not implemented
~/go/pkg/mod/github.com/liquidata-inc/go-mysql-server@v0.6.0/server/handler.go:97 (0x1afe358)
	com/liquidata-inc/go-mysql-server/server.(*Handler).ComPrepare: panic("prepared statements are not implemented")
~/go/pkg/mod/github.com/liquidata-inc/vitess@v0.0.0-20200807222445-2db8e9fb6365/go/mysql/conn.go:914 (0x18dbb7a)
	com/liquidata-inc/vitess/go/mysql.(*Conn).handleNextCommand: fld, err := handler.ComPrepare(c, queries[0])
~/go/pkg/mod/github.com/liquidata-inc/vitess@v0.0.0-20200807222445-2db8e9fb6365/go/mysql/server.go:472 (0x18f7a3c)
	com/liquidata-inc/vitess/go/mysql.(*Listener).handle: err := c.handleNextCommand(l.handler)
/usr/local/Cellar/go/1.14.3/libexec/src/runtime/asm_amd64.s:1373 (0x1068de0)
	goexit: BYTE	$0x90	// NOP

[mysql] 2020/09/23 19:49:09 packets.go:36: unexpected EOF
panic: try lock failed in line 0: SELECT GET_LOCK(?, 10) (details: invalid connection)

Not that you're going to handle that error directly, but just so you get an idea of an exact use case and what's blowing up.  I think golang-migrate is the most popular migration library, so it's not entirely out of left field.

Interesting.  The bleeding-edge, untagged version of that mysql driver has an x-no-lock parameter.  When I flip it on, golang-migrate buffers all the migrations and then I get a different failure:
panic: transaction start failed in line 0:  (details: Error 1105: unknown error: unsupported syntax: begin)

I guess transactions aren't supported?  I wrapped some of my migrations with BEGIN; and END; although laughably I don't think it does anything.  I'll try removing those statements.

Nope, looks like the driver uses a transaction for setting the version number in the migrations table 😢

Hi @tooolbox,
Begin and Commit parse without error, but don't do anything. Same with rollback. The engine doesn't model transaction boundaries / read isolation yet.
We're going to implement prepared statements in the near future, some time in the next month. Transaction support is a bit farther out.

Prepare statement execution is now on master. The last piece, com_stmt_fetch (used by C API) is being implement now. Andy will close this out when it's done.

@zachmu I was waiting for this issue to close, but given that I'm not using the C API, should I take another stab at running my tests and see how golang-migrate behaves with this project standing in for MySQL?
(It's more work than just running a command, hence me asking before diving in again.)
Thanks!

@zachmu I was waiting for this issue to close, but given that I'm not using the C API, should I take another stab at running my tests and see how golang-migrate behaves with this project standing in for MySQL?
(It's more work than just running a command, hence me asking before diving in again.)
Thanks!

Prepared statements are now fully implemented, let us know if you find any issues with them.
Transactions are still a no-op with the in-memory database implementation.

Wow, fantastic!  I'll give it a go.

Hi @zachmu - prepared statements are still listed as missing features

@llorllale that document in conjunction with the fact that this issue is closed confused me until I realized that I was attempting to use the in-memory database implementation, and getting strange errors. 😅


[Hacktoberfest '24]: Added JS Debouncing (Issue: #78)

Implement Debouncing for Search Input
Description
This PR introduces a debouncing feature for the search input in the Debounced Search Example project. The main goal is to optimize performance by limiting the rate at which the search function is called when the user types in the input field.
Changes Made

Added a reusable debounce function in script.js.
Implemented the debouncing logic in the search input event listener.
Updated the result display to show the search term after a 300-millisecond delay.
Styled the input field and result display for a cleaner user interface in style.css.

How to Test

Pull the latest changes from this branch.
Open index.html in a web browser.
Type in the search input field and observe that the result updates only after a pause of 300 milliseconds.
Verify that the UI is responsive and behaves as expected without unnecessary function calls.

Related Issues

Closes #78

Screenshots

@sujanrupu Your pull request has been successfully merged! Don't stop here—continue contributing by addressing more issues and aiming to become a top contributor.
Great contribution to HACKTOBERFEST'24! 🎉


How to duplicate a versionable object?

I have an object X, which is a Versionable model. I want to make a new object Y that has all the same field values as X, but has an unrelated history (i.e. no history).
In projects without versioning, I can do this:
o = MyModel.objects.get(name='x')
o.id = None
o.pk = None
o.save()

But a similar approach gets me an integrity error with CleanerVersion:
IntegrityError: NOT NULL constraint failed: mymodel.id
Any advice? I'll post back here when/if I find a solution. Thanks!

Hi Evan,
Try out the following:
o.id = o.identity = uuid4()
let's give the object a new id
o.version_start_date = o.version_birth_date = now()
and let's set its start date to the current timestamp
o.version_end_date = None
Ensure the new object to be current
o.save()
As a generic approach I could imagine to have the above code inside a
"duplicate" method on Versionables.
Thanks,
-Manuel
On Fri, Apr 10, 2015, 22:55 Evan Heidtmann<EMAIL_ADDRESS>wrote:

I have an object X, which is a Versionable model. I want to make a new
object Y that has all the same field values as X, but has an unrelated
history (i.e. no history).
In projects without versioning, I can do this:
o = MyModel.objects.get(name='x')o.id = Noneo.pk = None
o.save()
But a similar approach gets me an integrity error with CleanerVersion:
IntegrityError: NOT NULL constraint failed: mymodel.id
Any advice? I'll post back here when/if I find a solution. Thanks!
—
Reply to this email directly or view it on GitHub
https://github.com/swisscom/cleanerversion/issues/68.

Thanks! This works great. I did it like this:
import six, uuid
import versions.models

class MyVersionable(Versionable):
    def new_identity(self):
        self.id = self.identity = six.u(str(uuid.uuid4()))
        self.version_start_date = self.version_birth_date = versions.models.get_utc_now()
        self.version_end_date = None
        return self

    class Meta:
        abstract = True

I am not sure what to call this method: it doesn't make a duplicate; instead, it changes the current object into its own duplicate. And I didn't want to call save() because I've ended up in tough situations in the past trying to customize the save() method. So I called it new_identity because it gives the current object a new identity.
Happy to do a PR if you are OK with this method name, or suggest a different one.

How about sever() or, less cuttingly, detach()?
It could accept a boolean parameter save, defaulting to False, that would control whether or not it is saved immediately.

Excellent name! I left out the save parameter because you can achieve that with o.detach().save(). Probably should have tests for this thing.

Thanks for the contribution! This has been included in v1.4.5.


Cli: allow to deploy applications from a remote source (via http or git protocol)

Currently all the files must be local.
There are some cases when you want to get the application pipeline from a remote source (maybe as an example).
HTTP
It should be possible to specify a file from a remote source and download it using http protocol.
For instance and secrets, it's easy because they're single file.
For application, this approach is fine if the pipeline is single file.
langstream apps deploy myapp -app https://langstream.ai/samples/pipeline.yaml -i https://my-internal-service/instanceyaml  -s https://my-internal-service/secrets/secret.yaml

One possibility would be to support multiple yaml manifest in a single file.
Since LangStream expects a specific directories structure, this won't work with custom processors.
However, it covers many other cases.
Git
One possibility would be to pass a git repo url targeting a specific folder.
There's no standard for downloading a single directory from a git or github repository so it won't be a standard syntax.
I'd expect a cli command like this:
langstream apps deploy myapp -app git@github.com:<org>/<repo>.git/<folder> ...

how would you pass a "directory "?
we could allow to configure multiple pipelines in one file, but that won't help in the case of Python agents

maybe we could support packaging apps as zip files, but I didn’t want to go that way
because we would implicitly create our own “archive file” type, like jar, nar, wheel…

Released


Validation for registry credentials (password) blocks passing actual credential value to underlying playbook

Issue Type

Bug report

Molecule and Ansible details
ansible --version
2.5.2

molecule --version
2.14.0

Molecule installation method (one of):

pip

Ansible installation method (one of):

pip

Desired Behavior
The value of the environment variable for the Docker registry variable is passed to the docker create.yml playbook.
Actual Behaviour (Bug report only)
Assume I have exported some environment variables as follows:
export DOCKERUSER=foo
export DOCKERPASS=bar
echo $DOCKERUSER
># foo
echo $DOCKERPASS
># bar

Now, let us examine some platform iterations and their output.  Note: to capture the output, I commented out the no_log attribute in the docker create.yml playbook.
Iteration 1:
- name: centos7
    image: "chrismeyers-centos7"
    registry:
      url: "my.docker.registry.io"
      credentials:
        username: $DOCKERUSER
        password: "{DOCKERPASS}"

Observation:
Molecule correctly parses the username attribute and passes the actual underlying value (foo) to the create.yml playbook.  The password attribute validates, but Molecule passes the literal string "{DOCKERPASS}" to the create.yml playbook.  This is the wrong password and the registry throws authentication error (HTTP 401 codes).
Output:
TASK [Log into a Docker registry] **********************************************
    failed: [localhost] (item={'image': u'chrismeyers-centos7', 'name': u'centos7', 'registry': {'url': u'my.docker.registry.io', 'credentials': {'username': u'foo', 'password': u'{DOCKERPASS}'}}}) => {"changed": false, "item": {"image": "chrismeyers-centos7", "name": "centos7", "registry": {"credentials": {"password": "{DOCKERPASS}", "username": "foo"}, "url": "my.docker.registry.io"}}, "msg": "Logging into my.docker.registry.io for user foo failed - 401 Client Error: Unauthorized (\"Get https://my.docker.registry.io/v2/: unauthorized: authentication required\")"}

Iteration 2:
Slight alteration of the username attribute to prove that Molecule can handle both the $VAR and ${VAR} style of environment variable references.
- name: centos7
    image: "chrismeyers-centos7"
    registry:
      url: "my.docker.registry.io"
      credentials:
        username: ${DOCKERUSER}
        password: "{DOCKERPASS}"

Observation:
Molecule correctly parses the username attribute and passes the actual underlying value (foo) to the create.yml playbook.  The password attribute validates, but Molecule passes the literal string "{DOCKERPASS}" to the create.yml playbook.  This is the wrong password and the registry throws authentication error (HTTP 401 codes).
Output:
TASK [Log into a Docker registry] **********************************************
    failed: [localhost] (item={'image': u'chrismeyers-centos7', 'name': u'centos7', 'registry': {'url': u'my.docker.registry.io', 'credentials': {'username': u'foo', 'password': u'{DOCKERPASS}'}}}) => {"changed": false, "item": {"image": "chrismeyers-centos7", "name": "centos7", "registry": {"credentials": {"password": "{DOCKERPASS}", "username": "foo"}, "url": "my.docker.registry.io"}}, "msg": "Logging into my.docker.registry.io for user foo failed - 401 Client Error: Unauthorized (\"Get https://my.docker.registry.io/v2/: unauthorized: authentication required\")"}

Iteration 3:
Adding a dollar sign ($) to the password attribute:
- name: centos7
    image: "chrismeyers-centos7"
    registry:
      url: "my.docker.registry.io"
      credentials:
        username: ${DOCKERUSER}
        password: "${DOCKERPASS}"

Observation:
Molecule correctly parses and passes username attribute but fails password validation.
Output:
ERROR: Failed to validate.

{'platforms': [{0: [{'registry': [{'credentials': [{'password': ["value does not match regex '^[{$]+[a-z0-9A-z]+[}]*$'"]}]}]}]}]}

Iteration 4:
Remove double quotes from password value
- name: centos7
    image: "chrismeyers-centos7"
    registry:
      url: "my.docker.registry.io"
      credentials:
        username: ${DOCKERUSER}
        password: ${DOCKERPASS}

Observation:
Molecule correctly parses and passes username attribute but fails password validation.
Output:
ERROR: Failed to validate.

{'platforms': [{0: [{'registry': [{'credentials': [{'password': ["value does not match regex '^[{$]+[a-z0-9A-z]+[}]*$'"]}]}]}]}]}

Iteration 5:
Remove double quotes AND curly braces from password value
- name: centos7
    image: "chrismeyers-centos7"
    registry:
      url: "my.docker.registry.io"
      credentials:
        username: ${DOCKERUSER}
        password: $DOCKERPASS

Observation:
Molecule correctly parses and passes username attribute but fails password validation.
Output:
ERROR: Failed to validate.

{'platforms': [{0: [{'registry': [{'credentials': [{'password': ["value does not match regex '^[{$]+[a-z0-9A-z]+[}]*$'"]}]}]}]}]}

In summary, to pass the regex validation, you have to wrap the value of the password attribute in double/single quotes.  However, doing so passes the string literal of the password attribute to the underlying docker create.yml playbook, which is not the value of the referenced environment variable.
The hacky solution for me has been to delete the regex pattern matching lines (42 and 532)from molecule/model/schema_v2.py
Iteration 6:
Schema hack
- name: centos7
    image: "chrismeyers-centos7"
    registry:
      url: "my.docker.registry.io"
      credentials:
        username: $DOCKERUSER
        password: $DOCKERPASS

Observation:
Molecule correctly parses the username and password attributes and passes the actual underlying values (foo and bar) to the create.yml playbook.  I see the auths section of ~/.docker/config.json properly updated, and the image pulls down to my machine from my custom registry.
Output:
TASK [Log into a Docker registry] **********************************************
    changed: [localhost] => (item={'image': u'chrismeyers-centos7', 'name': u'centos7', 'registry': {'url': u'my.docker.registry.io', 'credentials': {'username': u'foo', 'password': u'bar'}}})

I truly appreciate the thoughtfulness behind forcing folks to store their sensitive credentials in a place that won't accidentally be committed to source control.  However, I think the implementation needs a little more work.  Kudos on the Molecule project thus far and keep up the good work.

- name: centos7
    image: "chrismeyers-centos7"
    registry:
      credentials:
        password: "{DOCKERPASS}"

This syntax is wrong.  Molecule is telling you not to use it.
The docs are telling you to use the following syntax:
  - name: instance
    hostname: instance
    image: image_name:tag
    registry:
      url: registry.example.com
      credentials:
        username: $USERNAME
        password: $PASSWORD
        email<EMAIL_ADDRESS>

However, oddly I missed removing the regexp check from the normal validation.  I'll fix that.

This bug was reported and fixed in #1315.  However, 2.15 is not released yet.

Awesome, thanks!

However, I did find an issue with #1315.  I'll have 2.15 out later today.

Fixed in #1332

Hi!
I have an issue when trying to use $CI_REGISTRY_PASSWORD for docker registry password in molecule.yml.
I think the validation still fails for passwords from the environment variable with underscores because the pre_validate_base_schema catches it.
platforms:
  - name: instance-1
    image: blabla
    registry:
      url: registry.example.com
      credentials:
        username: "${CI_REGISTRY_USER:-registry}" # This works as expected
        password: "$CI_REGISTRY_PASSWORD"
    privileged: True
    command: ""

Error message:
ERROR: Failed to validate.

{'platforms': [{0: [{'registry': [{'credentials': [{'password': ["value does not match regex '^[{$]+[a-z0-9A-Z]+[}]*$'"]}]}]}]}]}

Would you mind to take a look?
Thanks,
Viktor


bug: incompatibility with AzAPI v1.13

We are aware of an issue with the latest minor release of AzAPI v1.13. This has been caused by the provider making breaking changes.
For now we recommend customers add this code to their root module:
terraform {
  required_providers {
    azapi = {
      source  = "azure/azapi"
      version = "< 1.13"
    }
  }
}

Hello @matt-FFFFFF,
Any update on when fix #370 will be available? I didn't realize my azapi provider version wasn't pinned, and it upgraded to v1.13.1. Doesn't seem like I can run a successful apply, and I can't downgrade now that my resources are marked as having been managed by the newer version.
Thank you!

Any updates when this? Thanks.

With v1.13.1 this is now fixed

Hello @matt-FFFFFF,
Any update on when fix #370 will be available? I didn't realize my azapi provider version wasn't pinned, and it upgraded to v1.13.1. Doesn't seem like I can run a successful apply, and I can't downgrade now that my resources are marked as having been managed by the newer version. Any ideas for how to proceed until the fix is available?
Thank you!

We will now put off this update until v2 of AzAPI, rather than making a breaking change and introducing a minimum of v1.13.1


adjoint functor theorem

I think it's a good idea to add adjoint functor theorem using the solution set predicate

this, however, will break #172 even further.

I am stuck. I don't think the way I am looking into it is correct. I should check how other libraries do this.

When I did a quick Google on the topic, I found nothing. Maybe ask on the CS Theory stackexchange?  I can also ask on the CT zulip chat, if you'd like.
Also, some details of where you got stuck might help.  Check in the code with holes in a branch?

I think I was dumb. It's probably working. let me think about it for a bit more while.

OK this is finally done.

Hurray!  That seemed quite difficult - what were the big sticking points? What are the items learned from this, that should perhaps be recorded?

it shouldn't have taken this long if i worked on it fulltime. the point is that the definition of continuous functor was wrong. it wasn't strong enough. this is dealt with in #184 . another thing is that we also need to prove a separate solution set property for initial object.

"the definition of continuous functor was wrong" is definitely a big deal. Was that inherited from the old library?

no, it's not. it's just messed up. i shouldn't call it wrong, it's just missing coherence condition. the right one gots in already in #184. essentially the previous definition only requires the apexes to be isomorphic, but the right definition should be cone preservation, which turns out to be the definition given by @TOTBWF . I have fixed the theorems mentioning it and proved some more in #187

Sorry to be late to the party, but shouldn't the two definitions of (co)limit preservation be equivalent? Doesn't an iso on the apex (of a limit) induce a cone-iso via the universal property of the limit? Basically, the UIP induces a unique morphism between the corresponding cones, which has to be equal to the iso (by uniqueness), no?


Don't throw away user input when directory exists

Cookiecutter version:1.4.0
Template project url:any
Python version:3.5.2
Operating System:Windows 10

Description:

Create a project by hitting enter a bunch
Create a project with the same output directory, but spend a LOT of time entering parameters
Observe as Cookiecutter throws away all of your answers because the output directory exists.

expected results:
Environment is validated before user is prompted for input, not after.

Cookiecutter does not know the target location for the new project before prompting.
You can try the replay feature to re-use previously entered information.


Missing steps

Following these steps exactly did not work for me.

I couldn't use the PostBuildEvents cause they weren't working and I had to copy files manually.
The project did not work and kept getting parsing error because I needed to also copy the .xbf file. The current steps don't say anything about the xbf file.
After I copied the Xbf I had to set the property "Copy to Output directory" to "Copy if newer"

Once I did all that the project worked like it was supposed to. It would also be helpful if there was a link to a project in source control that already does this. (If there is I couldn't find it)
Thank you!

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

ID: 20244883-a846-298a-f44d-22ad9501d17f
Version Independent ID: f61f949f-f9b4-5a11-7361-b6fe59278fa1
Content: WindowsXAMLHost control - Windows Community Toolkit
Content Source: docs/controls/wpf-winforms/WindowsXamlHost.md
Product: windows
GitHub Login: @normesta
Microsoft Alias: nikolame

@alihamie, thanks for testing and reporting this. Feel free to edit the documentation and submit a PR as well.

clarified the docs a bit in https://github.com/MicrosoftDocs/WindowsCommunityToolkitDocs/commit/a8aa7e1437adaf0c1d30e420507a264a158d9813. Was not able to reproduce the issue you are running into and it would help if you could share a project to repro the issue.


TypeError: undefined is not a constructor (evaluating 'new URL.FetchRequest()')

I have double checked that My Toggl already has projects created and several actions logged(not with OmniToggl).
Could you look into it or suggest me any method to debug? Thanks a lot.

Hey @jory18, what version of OmniFocus are you on. That error sounds like it's using an old version of OmniFocus. This plugin needs at least 3.11.2.

I updated OmniFocus from 3.11.0 to 3.11.2, and now the error got fixed and the plugin works very well.
Thanks very much!


can you add more sensors to this?

Wonder if you can add more sensors to this integration? I was trying to add it into the Energy section of HA but the first configuration was looking for a sensor for "Grid consumption"

Hallo Mohammad,
which end point do you also want to read from the inverter? I can try to help you but my inverter is dead, I can't test it.

Hi there, kann you add this list of Sensors

name: "PV_SUED_Status"
unique_id: "PV_SUED_Status"
state_class: "measurement"
data_type: "int32"
unit_of_measurement: "status"
slave: 3
address: 30201
count: 2

name: "PV_SUED_Gesamtertrag"
unique_id: "PV_SUED_Gesamtertrag"
device_class: "energy"
state_class: "total_increasing"
data_type: "int32"
unit_of_measurement: "kWh"
slave: 3
address: 30531
count: 2
name: "PV_SUED_Leistung"
unique_id: "PV_SUED_Leistung"
state_class: measurement
device_class: power
data_type: "int32"
unit_of_measurement: "W"
slave: 3
address: 30775
count: 2
name: "PV_SUED_Tagesertrag"
unique_id: "PV_SUED_Tagesertrag"
state_class: "total_increasing"
device_class: "energy"
data_type: "int64"
unit_of_measurement: "Wh"
slave: 3
address: 30517
count: 4
name: "PV_SUED_Frequenz"
unique_id: "PV_SUED_Frequenz"
state_class: "measurement"
device_class: "frequency"
data_type: "uint32"
unit_of_measurement: "Hz"
slave: 3
address: 30803
count: 2
scale: 0.01
precision: 2
name: "Power_SUED_L1"
unique_id: "Powe_SUED_L1"
state_class: "measurement"
device_class: "power"
unit_of_measurement: "W"
slave: 3
address: 30777
count: 2
data_type: "int32"
name: "Power_SUED_L2"
unique_id: "Powe_SUED_L2"
state_class: "measurement"
device_class: "power"
unit_of_measurement: "W"
slave: 3
address: 30779
count: 2
data_type: "int32"
name: "Power_SUED_L3"
unique_id: "Powe_SUED_L3"
state_class: "measurement"
device_class: "power"
unit_of_measurement: "W"
slave: 3
address: 30781
count: 2
data_type: "int32"
name: "AMP_SUED_L1"
unique_id: "AMP_SUED_L1"
state_class: "measurement"
device_class: "current"
unit_of_measurement: "A"
slave: 3
address: 30797
count: 2
scale: 0.001
precision: 2
data_type: "int32"
name: "AMP_SUED_L2"
unique_id: "AMP_SUED_L2"
state_class: "measurement"
device_class: "current"
unit_of_measurement: "A"
slave: 3
address: 30799
count: 2
data_type: "int32"
scale: 0.001
precision: 2
name: "AMP_SUED_L3"
unique_id: "AMP_SUED_L3"
state_class: "measurement"
device_class: "current"
unit_of_measurement: "A"
slave: 3
address: 30801
count: 2
data_type: "int32"
scale: 0.001
precision: 2
name: "Volt_SUED_L1"
unique_id: "Volt_SUED_L1"
state_class: "measurement"
device_class: "voltage"
unit_of_measurement: "V"
slave: 3
address: 30783
count: 2
data_type: "int32"
scale: 0.01
precision: 1
name: "Volt_SUED_L2"
unique_id: "Volt_SUED_L2"
device_class: "voltage"
state_class: "measurement"
unit_of_measurement: "V"
slave: 3
address: 30785
count: 2
data_type: "int32"
scale: 0.01
precision: 1
name: "Volt_SUED_L3"
unique_id: "Volt_SUED_L3"
device_class: "voltage"
state_class: "measurement"
unit_of_measurement: "V"
slave: 3
address: 30787
count: 2
data_type: "int32"
scale: 0.01
precision: 1
name: "sma_SUED_power_total_production"
unit_of_measurement: "Wh"
state_class: "total_increasing"
device_class: "energy"
slave: 3
address: 30513
scan_interval: 10
data_type: "int64"

I would like to support this! Would be grateful if this integration would show for example AC voltage and inverter temperature.


cdkTextareaAutosize: emit event when the textarea height changes

It would be more efficient than checking on every keyup of the area.

This isn't a high priority for the team, but I'll accept a PR if someone wants to work on it

Hello, I can try my hand at this PR if it is still available to be worked on. This would be my first contribution so I might be missing a few pointers here and there. Would this apply only to height changes or dimension changes of any kind?


[Documentation Bug]: Duplicate Entries in README.md

Describe the bug ✍
Describe your bug here
Game Space_drifter's entry in main README.md is done two times
Provide step by step information reproduce the bug 📄
Description
Delete one duplicate entry of the the game Space_drifter from README.md
Select program in which you are contributing
GSSoC23
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

Hey @thevirengarg !
Thank you for raising an issue 💗
You can self assign the issue by commenting /assign in comment 😀
Make sure you follow CODE OF CONDUCT and CONTRIBUTING GUIDELINES 🚀
Don’t Forget to ⭐ our GameZone🎮
Make sure you join our Discord🕹

/assign

Hey @thevirengarg ! Thank you so much for your raising the issue💗
It’s all yours, you can come anytime again and make some contributions! 🚀
Alone, we can do little, but together we can do so much! 😇


MRAN and Binder

MRAN retirement breaks Binder as it now cannot find the appropriate MRAN snapshot (https://github.com/jupyterhub/repo2docker/issues/1240) - there may be other Binder-based solutions, but it might be best to switch to using Docker directly.

Looks like it might be fixed by https://posit.co/blog/migrating-from-mran-to-posit-package-manager/


How to install rawpy on Mac M1？

When I installed on MacOS with M1(arm) according to Installation from source on Linux/macOS , it showed that Successfully installed rawpy, but rawpy was not available.
Building wheels for collected packages: rawpy
  Building wheel for rawpy (setup.py) ... done
  WARNING: Legacy build of wheel for 'rawpy' created no files.
  Command arguments: /Applications/Xcode.app/Contents/Developer/usr/bin/python3 -u -c '
  exec(compile('"'"''"'"''"'"'
  #This is <pip-setuptools-caller> -- a caller that pip uses to run setup.py
  #- It imports setuptools before invoking setup.py, to enable projects that directly
  #import from `distutils.core` to work with newer packaging standards.
  #- It provides a clear error message when setuptools is not installed.
  #- It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so
  #setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning:
  #manifest_maker: standard file '"'"'-c'"'"' not found".
  #- It generates a shim setup.py, for handling setup.cfg-only projects.
  import os, sys, tokenize

  try:
      import setuptools
  except ImportError as error:
      print(
          "ERROR: Can not execute `setup.py` since setuptools is not available in "
          "the build environment.",
          file=sys.stderr,
      )
      sys.exit(1)

  __file__ = %r
  sys.argv[0] = __file__

  if os.path.exists(__file__):
      filename = __file__
      with tokenize.open(__file__) as f:
          setup_py_code = f.read()
  else:
      filename = "<auto-generated setuptools caller>"
      setup_py_code = "from setuptools import setup; setup()"

  exec(compile(setup_py_code, filename, "exec"))
  '"'"''"'"''"'"' % ('"'"'/Users/clearlon/Downloads/rawpy/setup.py'"'"',), "<pip-setuptools-caller>", "exec"))' bdist_wheel -d /private/var/folders/3s/j3nhh0n94gn18m3ry7rt0zc80000gn/T/pip-wheel-g6enwm30
  Command output: [use --verbose to show]
  Running setup.py clean for rawpy
Failed to build rawpy
Installing collected packages: rawpy
  Running setup.py install for rawpy ... done
Successfully installed rawpy

Duplicate of #167 and #170?

@clearlon Not sure if you're still having this issue, and to be clear, I have no idea what I'm doing. But I ran into the same exact issue while trying to install something else that listed rawpy as a requirement in a requirements.txt and ultimately managed to get it installed.
My machine info:
macOS Moneterey - 12.2.1
MacBook Pro (14-inch, 2021)
Apple M1 Pro
I'm going to be intentionally super verbose for anyone else scouring google for answers.
I got this error first
ERROR: Could not find a version that satisfies the requirement rawpy (from versions: none)
ERROR: No matching distribution found for rawpy

Which then led to this issue I believe https://github.com/letmaik/rawpy/issues/167. And then that led to these instructions: https://github.com/letmaik/rawpy#installation-from-source-on-linuxmacos, where I ended up getting some behavior similar to you, but also different
  Preparing metadata (setup.py) ... done
Requirement already satisfied: numpy in /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages (from rawpy==0.17.1) (1.22.4)
Using legacy 'setup.py install' for rawpy, since package 'wheel' is not installed.
Installing collected packages: rawpy
  Running setup.py install for rawpy ... done
Successfully installed rawpy

It says successful, but in reality rawpy could not be found or used. But there's a peculiar line in there about wheel
Using legacy 'setup.py install' for rawpy, since package 'wheel' is not installed.

So I went ahead and installed wheel via pip3 install wheel. That went well, so I went ahead and tried installing from the rawpy repo again pip3 install ., and that's how I got to the same exact error as you
Preparing metadata (setup.py) ... done
Requirement already satisfied: numpy in /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages (from rawpy==0.17.1) (1.22.4)
Building wheels for collected packages: rawpy
  Building wheel for rawpy (setup.py) ... done
  WARNING: Legacy build of wheel for 'rawpy' created no files.
  Command arguments: /Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9 -u -c '
  exec(compile('"'"''"'"''"'"'
  # This is <pip-setuptools-caller> -- a caller that pip uses to run setup.py
  #
  # - It imports setuptools before invoking setup.py, to enable projects that directly
  #   import from `distutils.core` to work with newer packaging standards.
  # - It provides a clear error message when setuptools is not installed.
  # - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so
  #   setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning:
  #     manifest_maker: standard file '"'"'-c'"'"' not found".
  # - It generates a shim setup.py, for handling setup.cfg-only projects.
  import os, sys, tokenize

  try:
      import setuptools
  except ImportError as error:
      print(
          "ERROR: Can not execute `setup.py` since setuptools is not available in "
          "the build environment.",
          file=sys.stderr,
      )
      sys.exit(1)

  __file__ = %r
  sys.argv[0] = __file__

  if os.path.exists(__file__):
      filename = __file__
      with tokenize.open(__file__) as f:
          setup_py_code = f.read()
  else:
      filename = "<auto-generated setuptools caller>"
      setup_py_code = "from setuptools import setup; setup()"

  exec(compile(setup_py_code, filename, "exec"))
  '"'"''"'"''"'"' % ('"'"'/Users/johnilquezada/Development/rawpy/setup.py'"'"',), "<pip-setuptools-caller>", "exec"))' bdist_wheel -d /private/var/folders/pp/h4fhyjq566v4gqvcfxdd2yrw0000gn/T/pip-wheel-_5q21bkb
  Command output: [use --verbose to show]
  Running setup.py clean for rawpy
Failed to build rawpy
Installing collected packages: rawpy
  Running setup.py install for rawpy ... done
Successfully installed rawpy

Says successful but it actually failed.
Then I happened to find this issue https://github.com/microsoft/vscode-python/issues/15057. I followed the repro steps in there (but I changed the pip command to pip3):

 pip3 install numpy cython
sudo TMPDIR=. pip3 install --verbose --no-clean .

This one ended in the same error again, but the output was slightly different. Now it mentioned sh: cmake: command not found, so in a different terminal I ran brew install cmake
Once that finished I went back and re-ran sudo TMPDIR=. pip3 install --verbose --no-clean.
Finally that actually truly installed rawpy, and going back to what I was originally trying to install made it past that step.
I'm now stuck on a different part, but hopefully this at least helps with getting rawpy installed on an M1 Mac.

Keep in mind that there is always the option to use the amd64 version of Python on M1. It may be a little bit slower than the native one but I doubt it's a practical issue in most cases.

@letmaik Thanks for the heads up. I just tried this via Anaconda and it appears to suffer from the same issue. I added the correct channel, and whether it's via the GUI or CLI, it seems to think rawpy doesn't exist.

I've managed to successfully install from source on Mac M1. Initially, I had the same errors as @JQuezada0 and followed their solutions, up until running brew install cmake. After this I still had errors running sudo make install (the final step of libraw installation) due to issues with OpenMP. It seems others have had issues installing and using OpenMP on Mac M1; I ran the following in a new terminal:
brew install llvm
cd /opt/homebrew/opt/libomp/lib

cd /usr/local/lib
sudo ln -s /opt/homebrew/opt/libomp/lib/libomp.dylib libomp.dylib

I also ran brew install libomp, though this might have been redundant. After that, I was able to successfully finish installing libraw then rawpy.

I installed universal2 format python3 from https://www.python.org/downloads/release/python-3108, then use /usr/bin/arch -x86_64 /Library/Frameworks/Python.framework/Versions/3.10/bin/pip to install rawpy from pypi.org

any news on being able to install via pip install?

For anyone waiting, please follow this upstream issue: https://github.com/actions/runner-images/issues/2187

I was able to install rawpy following instructions mentioned by @moebaid
My machine info:
macOS Moneterey - 12.6.2
MacBook Pro (13-inch, M1, 2020)
`
brew install cmake
brew install llvm
cd /opt/homebrew/opt/libomp/lib
cd /usr/local/lib
sudo ln -s /opt/homebrew/opt/libomp/lib/libomp.dylib libomp.dylib
python3 -m venv venv
source venv/bin/activate/
git clone https://github.com/letmaik/rawpy
cd rawpy
pip install wheel numpy cython
pip install .`
It successfully installed rawpy in my site-packages. Later, I deleted rawpy directory.

I was ultimately able to install rawpy with

(pyenv installed) python==3.10
numpy==1.23.2
M1 Pro
macOS Monterey

Adding my experience to the above solutions for installing on M1 with another issue I ran into with compiling the Cython code due to what seems like a change in the numpy C-API.
The Cython compilation issue was in the two places where _rawpy.pyx sets ndarr.base = <PyObject*> self raising the following error Assignment to a read-only property. After looking through this issue, I replaced the two instances of setting ndarr.base with the following call to numpy's C-API:
# ndarr.base = <PyObject*> self
np.PyArray_SetBaseObject(ndarr, self)

After making that change, I was able to build/install rawpy with pip install .

@rafalstapinski Can you open a pull request with the change for numpy? Thanks!

Hey I built some wheels using my m2 mini local runner you can install with
pip install newrawpy
happy to add my runner to this repo if the owners are interested. This was just a quick patch fix on my end.
https://github.com/open-shade/newrawpy/

True, I think I would have the same reaction if someone offered that to me haha!

need py on m1 air, how-to?

need rawpy on m1 air, new to py - how to?

Sort of shoehorning my own solution in here in the form of #209
I had a similar problem awhile ago, and decided to build against the system libraw, installed using Homebrew:
brew install libraw
env RAWPY_USE_SYSTEM_LIBRAW=1 python setup.py install

Glad to hear the M1 runners will be available soon!

No, looks like it can't find the header path though. If you run pkg-config --cflags libraw do you get any output? It's possible that brew install pkg-config will fix it.

Looked into this a bit.
There are already beta runners (paid): https://docs.github.com/en/actions/using-github-hosted-runners/about-larger-runners/running-jobs-on-larger-runners?platform=mac#available-macos-larger-runners
The next milestone is General Availability (GA). Expected to be ready: Q1 2024 – Jan-Mar: https://github.com/github/roadmap/issues/819
"Once we reach the GA milestone, we will start working on additional plans to support open source, along with new macOS runners."
https://github.com/actions/runner-images/issues/8439#issuecomment-1755601587
So might be a while still :)

Here's a one-liner shot in the dark that happened to work for me in my env (M2, btw):
pip install<EMAIL_ADDRESS>
You may want to update the tag.

It fails when I try it @chbrown :
DEPRECATION<EMAIL_ADDRESS>contains an egg fragment with a non-PEP 508 name pip 25.0 will enforce this behaviour change. A possible replacement is to use the req @ url syntax, and remove the egg fragment. Discussion can be found at https://github.com/pypa/pip/issues/11617

Hello, I'm trying to install rawpy on my M3 iMac. I am following the "Installation from source on Linux/macOS" as others have done. The installation itself works fine. However, when trying to use rawpy, I get the following error upon import rawpy:
ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/rawpy/_rawpy.cpython-310-darwin.so, 0x0002): symbol not found in flat namespace '__ZN6LibRaw11open_bufferEPKvm'
Any ideas?


[ No module named 'flashlight.lib.audio.flashlight_lib_audio_feature' ]

I think ['flashlight.lib.audio.flashlight_lib_audio_feature', 'flashlight_lib_text_dictionary', 'flashlight_lib_audio_feature', 'flashlight_lib_text_decoder'] is missing when I run python setup.py install
I run in Google Colab

from flashlight.lib.audio.feature import *
ModuleNotFoundError: No module named 'flashlight.lib.audio.flashlight_lib_audio_feature'

This is my log
running install
running bdist_egg
running egg_info
writing flashlight.egg-info/PKG-INFO
writing dependency_links to flashlight.egg-info/dependency_links.txt
writing top-level names to flashlight.egg-info/top_level.txt
package init file 'flashlight/init.py' not found (or not a regular file)
package init file 'flashlight/lib/audio/init.py' not found (or not a regular file)
package init file 'flashlight/lib/sequence/init.py' not found (or not a regular file)
package init file 'flashlight/lib/text/init.py' not found (or not a regular file)
reading manifest template 'MANIFEST.in'
writing manifest file 'flashlight.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-x86_64/egg
running install_lib
running build_py
creating build
creating build/lib.linux-x86_64-3.7
creating build/lib.linux-x86_64-3.7/flashlight
creating build/lib.linux-x86_64-3.7/flashlight/lib
copying flashlight/lib/init.py -> build/lib.linux-x86_64-3.7/flashlight/lib
creating build/lib.linux-x86_64-3.7/flashlight/lib/audio
copying flashlight/lib/audio/feature.py -> build/lib.linux-x86_64-3.7/flashlight/lib/audio
creating build/lib.linux-x86_64-3.7/flashlight/lib/sequence
copying flashlight/lib/sequence/criterion_torch.py -> build/lib.linux-x86_64-3.7/flashlight/lib/sequence
copying flashlight/lib/sequence/criterion.py -> build/lib.linux-x86_64-3.7/flashlight/lib/sequence
creating build/lib.linux-x86_64-3.7/flashlight/lib/text
copying flashlight/lib/text/decoder.py -> build/lib.linux-x86_64-3.7/flashlight/lib/text
copying flashlight/lib/text/dictionary.py -> build/lib.linux-x86_64-3.7/flashlight/lib/text
running build_ext
-- The CXX compiler identification is GNU 7.5.0
-- The C compiler identification is GNU 7.5.0
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Performing Test COMPILER_SUPPORTS_RDYNAMIC
-- Performing Test COMPILER_SUPPORTS_RDYNAMIC - Success
-- -rdynamic supported.
-- The CUDA compiler identification is NVIDIA 10.0.130
-- Check for working CUDA compiler: /usr/local/cuda/bin/nvcc
-- Check for working CUDA compiler: /usr/local/cuda/bin/nvcc -- works
-- Detecting CUDA compiler ABI info
-- Detecting CUDA compiler ABI info - done
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- CUDA found (library: /usr/local/cuda/lib64/libcudart_static.a;-lpthread;dl;/usr/lib/x86_64-linux-gnu/librt.so include: /usr/local/cuda/include)
-- CUDA architecture flags: -gencodearch=compute_30,code=sm_30-gencodearch=compute_35,code=sm_35-gencodearch=compute_50,code=sm_50-gencodearch=compute_52,code=sm_52-gencodearch=compute_60,code=sm_60-gencodearch=compute_61,code=sm_61-gencodearch=compute_70,code=sm_70-gencodearch=compute_75,code=sm_75-gencodearch=compute_75,code=compute_75
-- Will build flashlight libraries.
-- MKL_THREADING = OMP
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of void*
-- Check size of void* - done
-- Checking for [mkl_intel_lp64 - mkl_gnu_thread - mkl_core - gomp - pthread - m - dl]
--   Library mkl_intel_lp64: /opt/intel/mkl/lib/intel64/libmkl_intel_lp64.so
--   Library mkl_gnu_thread: /opt/intel/mkl/lib/intel64/libmkl_gnu_thread.so
--   Library mkl_core: /opt/intel/mkl/lib/intel64/libmkl_core.so
--   Library gomp: -fopenmp
--   Library pthread: /usr/lib/x86_64-linux-gnu/libpthread.so
--   Library m: /usr/lib/x86_64-linux-gnu/libm.so
--   Library dl: /usr/lib/x86_64-linux-gnu/libdl.so
-- Looking for cblas_sgemm
-- Looking for cblas_sgemm - found
-- MKL library found
-- CBLAS found (include: /opt/intel/mkl/include, library: /opt/intel/mkl/lib/intel64/libmkl_intel_lp64.so;/opt/intel/mkl/lib/intel64/libmkl_gnu_thread.so;/opt/intel/mkl/lib/intel64/libmkl_core.so;-fopenmp;/usr/lib/x86_64-linux-gnu/libpthread.so;/usr/lib/x86_64-linux-gnu/libm.so;/usr/lib/x86_64-linux-gnu/libdl.so)
-- FFTW found
-- Found OpenMP_C: -fopenmp (found version "4.5")
-- Found OpenMP_CXX: -fopenmp (found version "4.5")
-- Found OpenMP: TRUE (found version "4.5")
-- Looking for KenLM
-- Looking for lzma_auto_decoder in /usr/lib/x86_64-linux-gnu/liblzma.so
-- Looking for lzma_auto_decoder in /usr/lib/x86_64-linux-gnu/liblzma.so - found
-- Looking for lzma_easy_encoder in /usr/lib/x86_64-linux-gnu/liblzma.so
-- Looking for lzma_easy_encoder in /usr/lib/x86_64-linux-gnu/liblzma.so - found
-- Looking for lzma_lzma_preset in /usr/lib/x86_64-linux-gnu/liblzma.so
-- Looking for lzma_lzma_preset in /usr/lib/x86_64-linux-gnu/liblzma.so - found
-- Found LibLZMA: /usr/include (found version "5.2.2")
-- Found BZip2: /usr/lib/x86_64-linux-gnu/libbz2.so (found version "1.0.6")
-- Looking for BZ2_bzCompressInit
-- Looking for BZ2_bzCompressInit - found
-- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.11")
-- Using kenlm library found in /usr/local/lib/libkenlm.a
-- Using kenlm utils library found in /usr/local/lib/libkenlm_util.a
-- kenlm model.hh found in /usr/local/include/kenlm/lm
-- Found kenlm: /usr/local/include
-- Found kenlm (include: /usr/local/include, library: /usr/local/lib/libkenlm.a;/usr/local/lib/libkenlm_util.a;/usr/lib/x86_64-linux-gnu/liblzma.so;/usr/lib/x86_64-linux-gnu/libbz2.so;/usr/lib/x86_64-linux-gnu/libz.so)
-- Could NOT find cub (missing: cub_INCLUDE_DIRS)
-- Could not find cub - will download from source
-- Found PythonInterp: /usr/bin/python3 (found version "3.7.11")
-- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.7m.so
-- Performing Test HAS_FLTO
-- Performing Test HAS_FLTO - Success
-- LTO enabled
-- Configuring done
-- Generating done
-- Build files have been written to: /content/flashlight/bindings/python/build/temp.linux-x86_64-3.7
Scanning dependencies of target CUB
Scanning dependencies of target pybind11
[  1%] Creating directories for 'CUB'
[  3%] Creating directories for 'pybind11'
[  4%] Performing download step (git clone) for 'CUB'
[  6%] Performing download step (git clone) for 'pybind11'
Cloning into 'CUB'...
Cloning into 'pybind11'...
Note: checking out '9a19306fbf30642ca331d0ec88e7da54a96860f9'.
You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.
If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:
git checkout -b
HEAD is now at 9a19306f bump version to 2.2.4
Submodule 'tools/clang' (https://github.com/wjakob/clang-cindex-python3) registered for path 'tools/clang'
Cloning into '/content/flashlight/bindings/python/build/temp.linux-x86_64-3.7/pybind11/src/pybind11/tools/clang'...
Submodule path 'tools/clang': checked out '6a00cbc4a9b8e68b71caf7f774b3f9c753ae84d5'
[  8%] No patch step for 'pybind11'
[  9%] Performing update step for 'pybind11'
[ 11%] No configure step for 'pybind11'
[ 12%] No build step for 'pybind11'
[ 14%] No install step for 'pybind11'
[ 16%] Completed 'pybind11'
[ 16%] Built target pybind11
Note: checking out 'c3cceac115c072fb63df1836ff46d8c60d9eb304'.
You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.
If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:
git checkout -b
HEAD is now at c3cceac1 update readme to 1.8.0
[ 19%] No patch step for 'CUB'
[ 19%] Performing update step for 'CUB'
[ 20%] No configure step for 'CUB'
[ 22%] No build step for 'CUB'
[ 24%] No install step for 'CUB'
[ 25%] Completed 'CUB'
[ 25%] Built target CUB
Scanning dependencies of target fl-libraries
[ 27%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/sequence/criterion/cpu/ForceAlignmentCriterion.cpp.o
[ 29%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/set/Hungarian.cpp.o
[ 30%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/sequence/criterion/cpu/ConnectionistTemporalClassificationCriterion.cpp.o
[ 32%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/sequence/criterion/cpu/CriterionUtils.cpp.o
[ 33%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/sequence/criterion/cpu/FullConnectionCriterion.cpp.o
[ 35%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/sequence/criterion/cpu/ViterbiPath.cpp.o
[ 37%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/audio/feature/Ceplifter.cpp.o
[ 38%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/audio/feature/Dct.cpp.o
[ 40%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/audio/feature/Derivatives.cpp.o
[ 41%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/audio/feature/Dither.cpp.o
[ 43%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/audio/feature/Mfcc.cpp.o
[ 45%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/audio/feature/Mfsc.cpp.o
[ 46%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/audio/feature/PowerSpectrum.cpp.o
[ 48%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/audio/feature/PreEmphasis.cpp.o
[ 50%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/audio/feature/SpeechUtils.cpp.o
[ 51%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/audio/feature/TriFilterbank.cpp.o
[ 53%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/audio/feature/Windowing.cpp.o
[ 54%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/common/String.cpp.o
[ 56%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/common/System.cpp.o
[ 58%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/text/decoder/lm/ConvLM.cpp.o
[ 59%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/text/decoder/lm/ZeroLM.cpp.o
[ 61%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/text/decoder/lm/KenLM.cpp.o
[ 62%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/text/decoder/LexiconDecoder.cpp.o
[ 64%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/text/decoder/LexiconFreeDecoder.cpp.o
[ 66%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/text/decoder/LexiconSeq2SeqDecoder.cpp.o
[ 67%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/text/decoder/LexiconFreeSeq2SeqDecoder.cpp.o
[ 69%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/text/decoder/Trie.cpp.o
[ 70%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/text/decoder/Utils.cpp.o
[ 72%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/text/dictionary/Dictionary.cpp.o
[ 74%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/text/dictionary/Utils.cpp.o
[ 75%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/text/tokenizer/PartialFileReader.cpp.o
[ 77%] Building CXX object CMakeFiles/fl-libraries.dir/flashlight/lib/text/tokenizer/Tokenizer.cpp.o
[ 79%] Building CUDA object CMakeFiles/fl-libraries.dir/flashlight/lib/sequence/criterion/cuda/CriterionUtils.cu.o
[ 80%] Building CUDA object CMakeFiles/fl-libraries.dir/flashlight/lib/sequence/criterion/cuda/ForceAlignmentCriterion.cu.o
[ 82%] Building CUDA object CMakeFiles/fl-libraries.dir/flashlight/lib/sequence/criterion/cuda/FullConnectionCriterion.cu.o
[ 83%] Building CUDA object CMakeFiles/fl-libraries.dir/flashlight/lib/sequence/criterion/cuda/ViterbiPath.cu.o
[ 85%] Linking CUDA device code CMakeFiles/fl-libraries.dir/cmake_device_link.o
[ 87%] Linking CXX shared library ../lib.linux-x86_64-3.7/libfl-libraries.so
[ 87%] Built target fl-libraries
Scanning dependencies of target flashlight_lib_text_decoder
Scanning dependencies of target flashlight_lib_text_dictionary
Scanning dependencies of target flashlight_lib_audio_feature
Scanning dependencies of target flashlight_lib_sequence_criterion
[ 88%] Building CXX object CMakeFiles/flashlight_lib_text_decoder.dir/bindings/python/flashlight/lib/text/_decoder.cpp.o
[ 91%] Building CXX object CMakeFiles/flashlight_lib_text_dictionary.dir/bindings/python/flashlight/lib/text/_dictionary.cpp.o
[ 91%] Building CXX object CMakeFiles/flashlight_lib_audio_feature.dir/bindings/python/flashlight/lib/audio/_feature.cpp.o
[ 93%] Building CXX object CMakeFiles/flashlight_lib_sequence_criterion.dir/bindings/python/flashlight/lib/sequence/_criterion.cpp.o
[ 95%] Linking CXX shared module ../lib.linux-x86_64-3.7/flashlight/lib/text/flashlight_lib_text_dictionary.cpython-37m-x86_64-linux-gnu.so
[ 96%] Linking CXX shared module ../lib.linux-x86_64-3.7/flashlight/lib/sequence/flashlight_lib_sequence_criterion.cpython-37m-x86_64-linux-gnu.so
[ 98%] Linking CXX shared module ../lib.linux-x86_64-3.7/flashlight/lib/audio/flashlight_lib_audio_feature.cpython-37m-x86_64-linux-gnu.so
[ 98%] Built target flashlight_lib_text_dictionary
[100%] Linking CXX shared module ../lib.linux-x86_64-3.7/flashlight/lib/text/flashlight_lib_text_decoder.cpython-37m-x86_64-linux-gnu.so
[100%] Built target flashlight_lib_sequence_criterion
[100%] Built target flashlight_lib_audio_feature
[100%] Built target flashlight_lib_text_decoder
-- -rdynamic supported.
-- CUDA found (library: /usr/local/cuda/lib64/libcudart_static.a;-lpthread;dl;/usr/lib/x86_64-linux-gnu/librt.so include: /usr/local/cuda/include)
-- CUDA architecture flags: -gencodearch=compute_30,code=sm_30-gencodearch=compute_35,code=sm_35-gencodearch=compute_50,code=sm_50-gencodearch=compute_52,code=sm_52-gencodearch=compute_60,code=sm_60-gencodearch=compute_61,code=sm_61-gencodearch=compute_70,code=sm_70-gencodearch=compute_75,code=sm_75-gencodearch=compute_75,code=compute_75
-- Will build flashlight libraries.
-- MKL_THREADING = OMP
-- Checking for [mkl_intel_lp64 - mkl_gnu_thread - mkl_core - gomp - pthread - m - dl]
--   Library mkl_intel_lp64: /opt/intel/mkl/lib/intel64/libmkl_intel_lp64.so
--   Library mkl_gnu_thread: /opt/intel/mkl/lib/intel64/libmkl_gnu_thread.so
--   Library mkl_core: /opt/intel/mkl/lib/intel64/libmkl_core.so
--   Library gomp: -fopenmp
--   Library pthread: /usr/lib/x86_64-linux-gnu/libpthread.so
--   Library m: /usr/lib/x86_64-linux-gnu/libm.so
--   Library dl: /usr/lib/x86_64-linux-gnu/libdl.so
-- MKL library found
-- CBLAS found (include: /opt/intel/mkl/include, library: /opt/intel/mkl/lib/intel64/libmkl_intel_lp64.so;/opt/intel/mkl/lib/intel64/libmkl_gnu_thread.so;/opt/intel/mkl/lib/intel64/libmkl_core.so;-fopenmp;/usr/lib/x86_64-linux-gnu/libpthread.so;/usr/lib/x86_64-linux-gnu/libm.so;/usr/lib/x86_64-linux-gnu/libdl.so)
-- FFTW found
-- Found OpenMP_C: -fopenmp
-- Found OpenMP_CXX: -fopenmp
-- Found OpenMP: TRUE
-- Looking for KenLM
-- Using kenlm library found in /usr/local/lib/libkenlm.a
-- Using kenlm utils library found in /usr/local/lib/libkenlm_util.a
-- kenlm model.hh found in /usr/local/include/kenlm/lm
-- Found kenlm (include: /usr/local/include, library: /usr/local/lib/libkenlm.a;/usr/local/lib/libkenlm_util.a;/usr/lib/x86_64-linux-gnu/liblzma.so;/usr/lib/x86_64-linux-gnu/libbz2.so;/usr/lib/x86_64-linux-gnu/libz.so)
-- Could NOT find cub (missing: cub_INCLUDE_DIRS)
-- Could not find cub - will download from source
-- Configuring done
-- Generating done
-- Build files have been written to: /content/flashlight/bindings/python/build/temp.linux-x86_64-3.7
[  1%] Performing update step for 'CUB'
[  3%] Performing update step for 'pybind11'
[  4%] No configure step for 'CUB'
[  6%] No configure step for 'pybind11'
[  8%] No build step for 'pybind11'
[  9%] No build step for 'CUB'
[ 11%] No install step for 'pybind11'
[ 12%] No install step for 'CUB'
[ 14%] Completed 'pybind11'
[ 16%] Completed 'CUB'
[ 25%] Built target CUB
[ 25%] Built target pybind11
[ 87%] Built target fl-libraries
[ 90%] Built target flashlight_lib_text_decoder
[ 93%] Built target flashlight_lib_sequence_criterion
[ 96%] Built target flashlight_lib_audio_feature
[100%] Built target flashlight_lib_text_dictionary
-- -rdynamic supported.
-- CUDA found (library: /usr/local/cuda/lib64/libcudart_static.a;-lpthread;dl;/usr/lib/x86_64-linux-gnu/librt.so include: /usr/local/cuda/include)
-- CUDA architecture flags: -gencodearch=compute_30,code=sm_30-gencodearch=compute_35,code=sm_35-gencodearch=compute_50,code=sm_50-gencodearch=compute_52,code=sm_52-gencodearch=compute_60,code=sm_60-gencodearch=compute_61,code=sm_61-gencodearch=compute_70,code=sm_70-gencodearch=compute_75,code=sm_75-gencodearch=compute_75,code=compute_75
-- Will build flashlight libraries.
-- MKL_THREADING = OMP
-- Checking for [mkl_intel_lp64 - mkl_gnu_thread - mkl_core - gomp - pthread - m - dl]
--   Library mkl_intel_lp64: /opt/intel/mkl/lib/intel64/libmkl_intel_lp64.so
--   Library mkl_gnu_thread: /opt/intel/mkl/lib/intel64/libmkl_gnu_thread.so
--   Library mkl_core: /opt/intel/mkl/lib/intel64/libmkl_core.so
--   Library gomp: -fopenmp
--   Library pthread: /usr/lib/x86_64-linux-gnu/libpthread.so
--   Library m: /usr/lib/x86_64-linux-gnu/libm.so
--   Library dl: /usr/lib/x86_64-linux-gnu/libdl.so
-- MKL library found
-- CBLAS found (include: /opt/intel/mkl/include, library: /opt/intel/mkl/lib/intel64/libmkl_intel_lp64.so;/opt/intel/mkl/lib/intel64/libmkl_gnu_thread.so;/opt/intel/mkl/lib/intel64/libmkl_core.so;-fopenmp;/usr/lib/x86_64-linux-gnu/libpthread.so;/usr/lib/x86_64-linux-gnu/libm.so;/usr/lib/x86_64-linux-gnu/libdl.so)
-- FFTW found
-- Looking for KenLM
-- Using kenlm library found in /usr/local/lib/libkenlm.a
-- Using kenlm utils library found in /usr/local/lib/libkenlm_util.a
-- kenlm model.hh found in /usr/local/include/kenlm/lm
-- Found kenlm (include: /usr/local/include, library: /usr/local/lib/libkenlm.a;/usr/local/lib/libkenlm_util.a;/usr/lib/x86_64-linux-gnu/liblzma.so;/usr/lib/x86_64-linux-gnu/libbz2.so;/usr/lib/x86_64-linux-gnu/libz.so)
-- Could NOT find cub (missing: cub_INCLUDE_DIRS)
-- Could not find cub - will download from source
-- Configuring done
-- Generating done
-- Build files have been written to: /content/flashlight/bindings/python/build/temp.linux-x86_64-3.7
[  1%] Performing update step for 'CUB'
[  3%] Performing update step for 'pybind11'
[  4%] No configure step for 'CUB'
[  6%] No configure step for 'pybind11'
[  8%] No build step for 'CUB'
[  9%] No build step for 'pybind11'
[ 11%] No install step for 'CUB'
[ 12%] No install step for 'pybind11'
[ 14%] Completed 'CUB'
[ 16%] Completed 'pybind11'
[ 20%] Built target CUB
[ 25%] Built target pybind11
[ 87%] Built target fl-libraries
[ 90%] Built target flashlight_lib_sequence_criterion
[ 93%] Built target flashlight_lib_text_dictionary
[ 96%] Built target flashlight_lib_text_decoder
[100%] Built target flashlight_lib_audio_feature
-- -rdynamic supported.
-- CUDA found (library: /usr/local/cuda/lib64/libcudart_static.a;-lpthread;dl;/usr/lib/x86_64-linux-gnu/librt.so include: /usr/local/cuda/include)
-- CUDA architecture flags: -gencodearch=compute_30,code=sm_30-gencodearch=compute_35,code=sm_35-gencodearch=compute_50,code=sm_50-gencodearch=compute_52,code=sm_52-gencodearch=compute_60,code=sm_60-gencodearch=compute_61,code=sm_61-gencodearch=compute_70,code=sm_70-gencodearch=compute_75,code=sm_75-gencodearch=compute_75,code=compute_75
-- Will build flashlight libraries.
-- MKL_THREADING = OMP
-- Checking for [mkl_intel_lp64 - mkl_gnu_thread - mkl_core - gomp - pthread - m - dl]
--   Library mkl_intel_lp64: /opt/intel/mkl/lib/intel64/libmkl_intel_lp64.so
--   Library mkl_gnu_thread: /opt/intel/mkl/lib/intel64/libmkl_gnu_thread.so
--   Library mkl_core: /opt/intel/mkl/lib/intel64/libmkl_core.so
--   Library gomp: -fopenmp
--   Library pthread: /usr/lib/x86_64-linux-gnu/libpthread.so
--   Library m: /usr/lib/x86_64-linux-gnu/libm.so
--   Library dl: /usr/lib/x86_64-linux-gnu/libdl.so
-- MKL library found
-- CBLAS found (include: /opt/intel/mkl/include, library: /opt/intel/mkl/lib/intel64/libmkl_intel_lp64.so;/opt/intel/mkl/lib/intel64/libmkl_gnu_thread.so;/opt/intel/mkl/lib/intel64/libmkl_core.so;-fopenmp;/usr/lib/x86_64-linux-gnu/libpthread.so;/usr/lib/x86_64-linux-gnu/libm.so;/usr/lib/x86_64-linux-gnu/libdl.so)
-- FFTW found
-- Looking for KenLM
-- Using kenlm library found in /usr/local/lib/libkenlm.a
-- Using kenlm utils library found in /usr/local/lib/libkenlm_util.a
-- kenlm model.hh found in /usr/local/include/kenlm/lm
-- Found kenlm (include: /usr/local/include, library: /usr/local/lib/libkenlm.a;/usr/local/lib/libkenlm_util.a;/usr/lib/x86_64-linux-gnu/liblzma.so;/usr/lib/x86_64-linux-gnu/libbz2.so;/usr/lib/x86_64-linux-gnu/libz.so)
-- Could NOT find cub (missing: cub_INCLUDE_DIRS)
-- Could not find cub - will download from source
-- Configuring done
-- Generating done
-- Build files have been written to: /content/flashlight/bindings/python/build/temp.linux-x86_64-3.7
[  3%] Performing update step for 'pybind11'
[  3%] Performing update step for 'CUB'
[  4%] No configure step for 'pybind11'
[  6%] No configure step for 'CUB'
[  8%] No build step for 'pybind11'
[  9%] No build step for 'CUB'
[ 11%] No install step for 'pybind11'
[ 12%] No install step for 'CUB'
[ 14%] Completed 'pybind11'
[ 16%] Completed 'CUB'
[ 20%] Built target pybind11
[ 25%] Built target CUB
[ 87%] Built target fl-libraries
[ 90%] Built target flashlight_lib_text_dictionary
[ 93%] Built target flashlight_lib_audio_feature
[ 96%] Built target flashlight_lib_text_decoder
[100%] Built target flashlight_lib_sequence_criterion
creating build/bdist.linux-x86_64
creating build/bdist.linux-x86_64/egg
copying build/lib.linux-x86_64-3.7/libfl-libraries.so.0 -> build/bdist.linux-x86_64/egg
copying build/lib.linux-x86_64-3.7/libfl-libraries.so -> build/bdist.linux-x86_64/egg
creating build/bdist.linux-x86_64/egg/flashlight
creating build/bdist.linux-x86_64/egg/flashlight/lib
creating build/bdist.linux-x86_64/egg/flashlight/lib/sequence
copying build/lib.linux-x86_64-3.7/flashlight/lib/sequence/criterion_torch.py -> build/bdist.linux-x86_64/egg/flashlight/lib/sequence
copying build/lib.linux-x86_64-3.7/flashlight/lib/sequence/criterion.py -> build/bdist.linux-x86_64/egg/flashlight/lib/sequence
copying build/lib.linux-x86_64-3.7/flashlight/lib/sequence/flashlight_lib_sequence_criterion.cpython-37m-x86_64-linux-gnu.so -> build/bdist.linux-x86_64/egg/flashlight/lib/sequence
creating build/bdist.linux-x86_64/egg/flashlight/lib/audio
copying build/lib.linux-x86_64-3.7/flashlight/lib/audio/flashlight_lib_audio_feature.cpython-37m-x86_64-linux-gnu.so -> build/bdist.linux-x86_64/egg/flashlight/lib/audio
copying build/lib.linux-x86_64-3.7/flashlight/lib/audio/feature.py -> build/bdist.linux-x86_64/egg/flashlight/lib/audio
copying build/lib.linux-x86_64-3.7/flashlight/lib/init.py -> build/bdist.linux-x86_64/egg/flashlight/lib
creating build/bdist.linux-x86_64/egg/flashlight/lib/text
copying build/lib.linux-x86_64-3.7/flashlight/lib/text/flashlight_lib_text_decoder.cpython-37m-x86_64-linux-gnu.so -> build/bdist.linux-x86_64/egg/flashlight/lib/text
copying build/lib.linux-x86_64-3.7/flashlight/lib/text/decoder.py -> build/bdist.linux-x86_64/egg/flashlight/lib/text
copying build/lib.linux-x86_64-3.7/flashlight/lib/text/dictionary.py -> build/bdist.linux-x86_64/egg/flashlight/lib/text
copying build/lib.linux-x86_64-3.7/flashlight/lib/text/flashlight_lib_text_dictionary.cpython-37m-x86_64-linux-gnu.so -> build/bdist.linux-x86_64/egg/flashlight/lib/text
copying build/lib.linux-x86_64-3.7/libfl-libraries.so.0.3 -> build/bdist.linux-x86_64/egg
byte-compiling build/bdist.linux-x86_64/egg/flashlight/lib/sequence/criterion_torch.py to criterion_torch.cpython-37.pyc
byte-compiling build/bdist.linux-x86_64/egg/flashlight/lib/sequence/criterion.py to criterion.cpython-37.pyc
byte-compiling build/bdist.linux-x86_64/egg/flashlight/lib/audio/feature.py to feature.cpython-37.pyc
byte-compiling build/bdist.linux-x86_64/egg/flashlight/lib/init.py to init.cpython-37.pyc
byte-compiling build/bdist.linux-x86_64/egg/flashlight/lib/text/decoder.py to decoder.cpython-37.pyc
byte-compiling build/bdist.linux-x86_64/egg/flashlight/lib/text/dictionary.py to dictionary.cpython-37.pyc
creating build/bdist.linux-x86_64/egg/EGG-INFO
copying flashlight.egg-info/PKG-INFO -> build/bdist.linux-x86_64/egg/EGG-INFO
copying flashlight.egg-info/SOURCES.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
copying flashlight.egg-info/dependency_links.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
copying flashlight.egg-info/not-zip-safe -> build/bdist.linux-x86_64/egg/EGG-INFO
copying flashlight.egg-info/top_level.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
writing build/bdist.linux-x86_64/egg/EGG-INFO/native_libs.txt
creating dist
creating 'dist/flashlight-1.0.0-py3.7-linux-x86_64.egg' and adding 'build/bdist.linux-x86_64/egg' to it
removing 'build/bdist.linux-x86_64/egg' (and everything under it)
Processing flashlight-1.0.0-py3.7-linux-x86_64.egg
removing '/usr/local/lib/python3.7/dist-packages/flashlight-1.0.0-py3.7-linux-x86_64.egg' (and everything under it)
creating /usr/local/lib/python3.7/dist-packages/flashlight-1.0.0-py3.7-linux-x86_64.egg
Extracting flashlight-1.0.0-py3.7-linux-x86_64.egg to /usr/local/lib/python3.7/dist-packages
flashlight 1.0.0 is already the active version in easy-install.pth
Installed /usr/local/lib/python3.7/dist-packages/flashlight-1.0.0-py3.7-linux-x86_64.egg
Processing dependencies for flashlight==1.0.0
Finished processing dependencies for flashlight==1.0.0'
THANKS

Could you print tree -L 4 for the folder in dist packages for flashlight, to see what exactly is installed for you?

Could you print tree -L 4 for the folder in dist packages for flashlight, to see what exactly is installed for you?

I'm sorry, I used the colab GUI so I don't see ['flashlight_lib_text_decoder.cpython-37m-x86_64-linux-gnu.so', ....] files exist, but I still can't import them.

Are you trying to install in the colab (wanna know how I could repro the problem)?

Are you trying to install in the colab (wanna know how I could repro the problem

yes I am trying to install in the colab !!

Temporal solution for colab is to run pip install -e . and use
import sys
sys.path.insert(0, "/content/flashlight/bindings/python")

then imports are working fine for me.

Temporal solution for colab is to run pip install -e . instead of python setup.py install and use
import sys
sys.path.insert(0, "/content/flashlight/bindings/python")

then imports are working fine for me.
Update: even python setup.py install is working for me if I do installlation, restart kernel and then import (some crazy thing with colab itself I suppose):
Repro:
# First, choose backend to build with
backend = 'CUDA' #@param ["CPU", "CUDA"]
# Clone Flashlight
!git clone https://github.com/flashlight/flashlight.git
# install all dependencies for colab notebook
!source flashlight/scripts/colab/colab_install_deps.sh
%env MKLROOT=/opt/intel/mkl
! pip install packaging torch
# disable kenlm for simplicity
!export USE_KENLM=OFF && cd flashlight/bindings/python && python setup.py install
# this will give error
from flashlight.lib.audio.feature import *
# restart kernel and now it works
from flashlight.lib.audio.feature import *

Thank you, it worked fine. I will close my question.


[Bug]: NextJs localeDetection not working properly

Summary
We are deploying our NextJs site to Netlify with the @netlify/plugin-nextjs plugin.
However the language detection & redirection does not work.
Our next-i18n.config :
const locizeOptions = {
  projectId: process.env.NEXT_PUBLIC_LOCIZE_PROJECTID,
  apiKey: process.env.NEXT_PUBLIC_LOCIZE_APIKEY, // to not add the api-key in production, used for saveMissing feature
  version: process.env.NEXT_PUBLIC_LOCIZE_VERSION,
  referenceLng: process.env.NEXT_PUBLIC_LOCIZE_REFLNG,
};
const LocizeLastused = require("locize-lastused");
const LocizeBackend = require("i18next-locize-backend/cjs");

const isDev = process.env.NODE_ENV === "development";
const i18nUsedPlugins = [LocizeBackend];

if (isDev) {
  // locize-lastused
  // sets a timestamp of last access on every translation segment on locize
  // -> safely remove the ones not being touched for weeks/months
  // https://github.com/locize/locize-lastused
  i18nUsedPlugins.push(LocizeLastused);
}
module.exports = {
  i18n: {
    defaultLocale: "fr",
    locales: ["fr", "es-ES", "en", "de"],
    localeDetection: true,
  },
  backend: locizeOptions,
  locizeLastUsed: {
    ...locizeOptions,
    debounceSubmit: 90000,
    allowedHosts: ["localhost"],
  },
  use: i18nUsedPlugins,
  ns: ["website_common", "website_generalities", "website_daas", "website_advantages", "website_RGPD"], // the namespaces needs to be listed here, to make sure they got preloaded
  defaultNS: "website_common",
  nsSeparator: false, // so it accepts colons
  serializeConfig: false, // because of the custom use i18next plugin
  debug: isDev,
  saveMissing: isDev, // do not saveMissing to true for production
  reloadOnPrerender: true,
};

May be related to https://github.com/netlify/next-runtime/issues/1876 ?
Others seem to have the same issue : https://stackoverflow.com/questions/70249769/nextjs-localedetection-not-working-when-deployed-to-netlify
Thank you in advance.
Steps to reproduce

Change your browser language to English/Spanish/German
Go to https://fleet.co
Site is loaded in French

Redirection to browser language is properly done in our dev environment and in our previous Vercel hosting.
A link to a reproduction repository
No response
Next Runtime version
3.8.0
Is your issue related to the app directory (beta)?

[ ] Yes, I am using the app directory

More information about your build

[ ] I am building using the CLI
[X] I am building using file-based configuration (netlify.toml)

What OS are you using?
None
Your netlify.toml file
[build]
  publish = "out"

[[redirects]]
  from = "/spaces/"
  to = "/?utm_source=spaces&utm_campaign=flyer_2022"

[[redirects]]
  from = "/wework/"
  to = "/?utm_source=spaces&utm_campaign=flyer_2022"

[[redirects]]
  from = "/catalog/"
  to = "/catalog/category"

[[redirects]]
  from = "/location-ordinateurs/catalogue/"
  to = "/catalog/category"

[[redirects]]
  from = "/support/:article/"
  to = "/blog/:article/"

[[redirects]]
  from = "/location-ordinateurs/:brand/"
  to = "/catalog/brand/:brand"

[[redirects]]
  from = "/*"
  to = "/404"

[context.deploy-preview]
  command = "NEXT_PUBLIC_PR_NUMBER=$REVIEW_ID CI= yarn build"

Your public/_redirects file
/* /index.html 200
Your next.config.js file
const withPlugins = require("next-compose-plugins");
const withPWA = require("next-pwa");
const path = require("path");
const { i18n } = require("./next-i18n.config");
const generateSiteMap = require("./utils/generateSitemap");

module.exports = withPlugins(
  [
    [
      withPWA,
      {
        target: "serverless",
        pwa: {
          dest: "public",
          publicExcludes: ["!Fleet-CGV.pdf", "!images/*"],
          buildExcludes: [/images\/.*$/, /videos\/.*$/],
        },
      },
    ],
  ],
  // for translation
  {
    i18n,
    compiler: {
      styledComponents: true,
    },
    async redirects() {
      return [
        // ! Temporary redirects : Marketing campaign Flyers Oct 2022
        {
          source: "/spaces/",
          destination: "/?utm_source=spaces&utm_campaign=flyer_2022",
          permanent: false,
        },
        {
          source: "/wework/",
          destination: "/?utm_source=wework&utm_campaign=flyer_2022",
          permanent: false,
        },
        // New catalog
        {
          source: "/catalog/",
          destination: "/catalog/category",
          permanent: true,
        },
        {
          source: "/location-ordinateurs/catalogue/",
          destination: "/catalog/category",
          permanent: true,
        },
        {
          source: "/location-ordinateurs/:brand/",
          destination: "/catalog/brand/:brand",
          permanent: true,
        },

        // redirection blog
        {
          source: "/support/levee-de-fonds-ou-auto-financement-partage-experience-payfit-fleet/",
          destination: "/support/levee-de-fonds-ou-auto-financement-conseils-payfit-fleet/",
          permanent: true,
        },
      ];
    },

    webpack(config, { isServer }) {
      config.resolve.alias.images = path.join(__dirname, "public/images");

      if (isServer) {
        console.log("========>> Generating New Sitemap....");
        generateSiteMap();
      }

      return config;
    },
    trailingSlash: true,
    images: {
      domains: ["fleet.fra1.digitaloceanspaces.com", "fleet-test.fra1.digitaloceanspaces.com", "images.ctfassets.net"],
    },
  },
);

Builds logs (or link to your logs)
No response
Function logs
No response
.next JSON files
No response

Hi, thanks for the issue!
Please explain this in more detail:

However the language detection & redirection does not work.

I'm not following what you expect to see/happen in contrast to the current behavior. Thanks!

Hello,
I am talking about the Nextjs Locale Detection feature :
https://nextjs.org/docs/advanced-features/i18n-routing#automatic-locale-detection

When a user visits the application root (generally /), Next.js will try to automatically detect which locale the user prefers based on the Accept-Language header and the current domain.
If a locale other than the default locale is detected, the user will be redirected to either:
When using Sub-path Routing: The locale prefixed path
When using Domain Routing: The domain with that locale specified as the default
When using Domain Routing, if a user with the Accept-Language header fr;q=0.9 visits example.com, they will be redirected to example.fr since that domain handles the fr locale by default.
When using Sub-path Routing, the user would be redirected to /fr.

So I am expecting to be redirected to the correct subpath based on my Accept-language HTTP header via a 307.
On my local env :

On Netlify :

Hi @benjamin-fleet
The team at Netlify have now released the new v5 Next.js runtime which has support for both pages and app router, on-demand and time-based revalidation, automatic fine-grained cache control, and automatic image optimization using Netlify's image CDN.
You can find the documentation and additional information on the new runtime here: Next.js on Netlify
The v4 runtime is now in the maintenance support phase with no new features being added. Occasional bug fixes and security patches will be applied when needed.
Thanks!


[SPARK-44154][SQL] Added more unit tests to BitmapExpressionUtilsSuite and made minor improvements to Bitmap Aggregate Expressions

What changes were proposed in this pull request?
I firstly added more unit tests for the BITMAT_BIT_POSITION and BITMAP_BUCKET_NUMBER expressions. Secondly, I made a minor improvement in the implementation of the BITMAP_CONSTRUCT_AGG and BUTMAP_OR_AGG expressions, where I converted inputAggBufferAttributes from a method to a value.
Why are the changes needed?
The unit tests cover more corner cases. Having inputAggBufferAttributes as a value makes it so that the AttributeReferences aren't reinitialized every time inputAggBufferAttributes is referred to.
How was this patch tested?
I reran all the tests for Bitmap expressions and they succeeded. The test suites were BitmapExpressionUtilsSuite and BitmapExpressionsQuerySuite.

thanks, merging to master/3.5!