Table padding

This function implies that the length of a table must be a multiple of four bytes. In fact, a font is not considered structurally well-formed without the correct padding. All tables must begin on four-byte boundaries, and any remaining space between tables is padded with zeros.

This is important structural information and should not be buried in a side-note in a section on how to calculate checksums.

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

ID: 6a1bda96-a268-b684-6cea-9b0c7be6f24e
Version Independent ID: 36485fec-f05d-3984-6da8-ff2dd2799041
Content: OpenType font file - Typography
Content Source: typographydocs/opentype/spec/otff.md
Product: typography
GitHub Login: @PeterCon
Microsoft Alias: PeterCon

Here is a better way to write it:

The head table is a special case, as it  contains a checkSumAdjustment field which is calculated and written after the table's checksum is calculated, necessarily invalidating that checksum.  A font consumer attempting to verify that the head table has not changed should calculate the checkSum for that table by assuming that the checkSumAdjustment value is zero before comparing the result with the entry in the Table Directory.

If revising, note discussion of alignment in recom.htm (which adds to current ambiguity)

See related mentions in otff.htm at the start of the "Font Tables" section, and in the Recommendations chapter.

Draft revisions for the next version:
The OpenType Font File:
Inserted a paragraph after the description of TableRecord:

All tables must begin on four-byte boundaries, and any remaining space between tables must be padded with zeros. The length of each table should be recorded in the table record with the actual length of data, not the padded length.
Some tables have an internal structure with subtables located at specified offsets...

Revised the note that follows the algorithm for calculating a checksum:

Note: This function impliesassumes that the length of a table must beany table is a multiple of four bytes. In fact, a font is not considered structurally well-formed without the correct padding. All tables must begin on four-byte boundaries, and any remaining space between tables is padded with zeros. The length of all tables should be recorded in the table record with their actual length (not their padded length)., or that tables are padded with zero to four-byte aligned offsets. Actual table lengths recorded in the TableDirectory should not include padding, however. To accommodate data with a length that is not a multiple of four, the above algorithm must be modified to treat the data as though it contains zero padding to a length that is a multiple of four.

Deleted the first paragraph in the Font Tables section:

Font Tables
The TrueType rasterizer has a much easier time traversing tables if they are padded so that each table begins on a 4-byte boundary. Also, the algorithm for calculating table checksums assumes that tables are 32-bit aligned. For this reason, all tables must be 32-bit aligned and padded with zeroes.

Recommendations:
Revised the content in the Table Alignment and Length section:

All tables should be aligned to begin at offsets which are multiples of four bytes. While this is not required by the TrueType rasterizer, it does prevent ambiguous checksum calculations and greatly speeds table access on some processors.
All tables should be recorded in the table directory with their actual length. To ensure that checksums are calculated correctly, it is suggested that tables begin on 32-bit boundaries. Any extra space after a table (and before the next 32-bit boundary) should be padded with zeros.
Some implementations do not assume that tables have four-byte aligned offsets, and some do not validate table checksums. However, there are also implementations that do validate table checksums and that calculate checksums assuming that tables have four-byte aligned offsets with padded zeros. Also, having tables begin at four-byte aligned offsets provides performance benefit when accessing tables, and minimizes potential for erroneous checksum calculation. New fonts are required to align table offsets to multiples of four bytes. However, new software implementations should allow for table lengths that are not a multiple of four when calculating checksums, if checksums are validated.

All tables must begin on four-byte boundaries

This sounds like a strict requirement you just slipped in without broad consensus. I object to this.

No, read the opening comment and the current text: It's a currently-stated requirement; I've just moved it to a more appropriate location in the spec.

No, read the opening comment

I don't consider that comment in the checksum part of the spec as authoritative and implying that 4byte-padding was always a requirement.
Anyway. Doesn't matter because the spec has no enforcement.

Add'l info: Several engineers have confirmed to me that unaligned access remains slower even on modern hardware. Also, on Intel Itanium (produced until last year), it would result in hardware interrupts.

I think it makes sense for tables to be aligned on four byte boundaries but it's worth pointing out that not all fields in OpenType are aligned at present, for example the ScriptRecord.scriptTag and LangSysRecord.langSysTag fields are 32-bit but only have 16-bit alignment, so applications must be prepared to make unaligned reads for these fields.

I'll add a note in that regard after the mention of four-byte table alignment:

All tables must begin on four-byte boundaries, and any remaining space between tables must be padded with zeros. The length of each table should be recorded in the table record with the actual length of data, not the padded length.

Note: The requirement for four-byte alignment applies to top-level tables only and does not extend to sub-table offsets, records, or fields within tables or records. Some 32-bit fields (int32, uint32 or Offset32 types) might not be four-byte aligned within the file.

Does that work?

"fields within tables or records" sure, but are there no alignment constraints at all on subtables and other linked records within a table?

Well, all subtables are accessed via offsets from the start of their parent table, with either 16-bit or 32-bit offsets. (Unless I'm forgetting some really quirky exception --- maybe need to dbl check what apple did in the meta table.) So, I guess that all subtables would have to be at least two-byte aligned within the file.

(There was a quirk in Apple's initial doc'n of meta, but didn't affect subtable word alignment.)

"would have to be at least two-byte aligned" because the spec requires it? Is there anything in the spec saying that an Offset16 cannot be an odd number?

Another way of enforcing a minimal alignment constraint would be if no empty space or padding is allowed within a table, then if all the subtable sizes are multiples of two (which appears to be the case for GSUB, GPOS, and cmap) then all of them will be 16-bit aligned.

"would have to be at least two-byte aligned" because the spec requires it? Is there anything in the spec saying that an Offset16 cannot be an odd number?

Doh! You're right. So there's no direct or indirect constraint on subtable alignments.

Another way of enforcing a minimal alignment constraint would be if no empty space or padding is allowed within a table...

It's waaayyy too late to add that as a requirement: any number of fonts from the past 30 years might not conform.
So, I think the note I suggested above is a clean as is feasible at this point.

Sounds reasonable to me, although it would be nice to at least recommend font creators to align their subtables and/or refrain from adding unnecessary padding inside tables.
Thank you for putting in the effort to polish up the spec for 1.8.4, it's much appreciated!

Thank you for putting in the effort...

YW. Appreciate you mentioning it.

it would be nice to at least recommend font creators to align their subtables and/or refrain from adding unnecessary padding inside tables.

If subtable (d)word alignment is desirable, wouldn't that mean adding padding within tables?
Something could be added in recommendations, though I'd like to hear owners of runtime implementations indicating it would be desirable.

If subtable (d)word alignment is desirable, wouldn't that mean adding padding within tables?

Good point, if a cmap subtable format 0 was followed by a cmap subtable format 8 the length field would not be 32-bit aligned unless two bytes of padding was inserted between the subtables. It seems unreasonable to demand this, and it's unlikely that implementations are inserting an odd number of padding bytes, so it is probably best to remain silent on the matter. :laughing:

I'm aware of faster aligned access in modern hardware. And that's why I believe in fonttools and HarfBuzz we pad tables to four bytes. That's worth a note in the specification. But implementations are going to accept unaligned tables anyway. So I don't see why it's a good reason to disallow them in the specification.

So I don't see why it's a good reason to disallow them in the specification.

You've given a valid reason to consider changing to a recommendation. On the other hand, I've been told there are CFF rasterizers that will reject fonts if tables aren't four-byte aligned. (That could explain why this wasn't a requirement in TT or TTO specs but was added in OT.)
At any rate, I'd consider changing to a recommendation, but given the potential impact I think it shouldn't be in a dot-dot release, and that should only be done on the basis of a broad consensus, not as a unilateral decision.

On the other hand, I've been told there are CFF rasterizers that will reject fonts if tables aren't four-byte aligned.

We should not be driving the file format with handwavy implementations that do not matter in any significant way.

Specially when we are talking about future fo things, not the past.


ModuleNotFoundError: No module named 'utils'

Hi,
when I run python ../convai_evaluation_edit.py
I am getting the following errors
ModuleNotFoundError: No module named 'utils'
I can't find utils.py in any of the folders.
Did I install something wrong, or is the utils file not uploaded?
Thanks in advance.

Hi, thanks for pointing this out. We added the file utils.py, best


De-duplicate graph-sbol code

The graph-sbol command-line utility and library files currently duplicate code.
The command-line utility should need only the main function, and the library file should not need the main function.
We should try this split and make sure that it works as anticipated.

It turns out that there is a python setup recipe for doing this automatically.
We can eliminate the graph-sbol command-line utility file in the top level entirely and just set up an entry-point to call its main function, using the console_scripts entry-point declaration in setup.py, as is being done for excel-to-sbol

Better expressed in #93, fix pending in #101


Fix a typo in g3doc/how_tos/tool_developers

Add `()' after f.read so we pass a string rather than a
function.

Can one of the admins verify this patch?

@tensorflow-jenkins test this please.

LGTM


WIP - Ariakit: Add radio example

Add radio example #939

Hello @diegohaz, I'm working on the radio button example. I am not sure about the tests, could you please take a look at it?


Is it possible for TextLayer to support text wrapping?

Hello,
I am using deck.gl to show buildings’ name on a GeoJsonLayer.
However, those names are too long to have a good visual effects or contain description that should be displayed on the second line.
So, i am wondering whether TextLayer supports text wrapping？
The following screenshot is made by mapbox studio.
I want to known if there is a way to achieve the same effect by using TextLayer in deck.gl.
Thanks!

TextLayer does not support wrapping at the moment. Per discussion with @xintongxia, we can split this feature into two parts:

[ ] Support line breaks in text strings - we should be able to do this in a patch
[ ] Support auto-wrapping - this will require an API audit. We can add this to the next milestone.


✨ feat: featbit light version

light version

no kafka
no clickhouse
use redis pub/sub to handle flag and segment change messages: api pub, evaluation-server sub
use redis list to handle end-user and insight messages: evaluation server RPush, api LPOP
the Redis cache is now maintained by the API server instead of the evaluation server

build and run locally
cd featbit
docker compose -f .\docker-compose-light-dev.yml up -d

docs

[ ] README.md
[ ] featbit.co

change LIGHT_VERSION to IS_PRO


Removed Activity Log Solution in LAW

Overview/Summary
As per ADO USer Story #25143:
Remove Activity Log solution from Portal RI
Update and Portal documentation referencing this
This PR fixes/adds/changes/removes

Closes Issue #1150

Breaking Changes

Not Applicable

Testing Evidence
Please provide any testing evidence to show that your Pull Request works/fixes as described and planned (include screenshots, if appropriate).

Testing URLs
The below URLs can be updated where the placeholders are, look for {YOUR GITHUB BRANCH NAME HERE - Remove Curly Brackets Also} & {YOUR GITHUB BRANCH NAME HERE - Remove Curly Brackets Also}, to allow you to test your portal deployment experience.

Please also replace the curly brackets on the placeholders {}

Azure Public

Azure US Gov (Fairfax)

As part of this Pull Request I have

[ x] Checked for duplicate Pull Requests
[ x] Associated it with relevant issues, for tracking and closure.
[x ] Ensured my code/branch is up-to-date with the latest changes in the main branch
[ x] Performed testing and provided evidence.
[ x] Updated relevant and associated documentation.
[x ] Updated the "What's New?" wiki page (located: /docs/wiki/whats-new.md)

AB#25143

AB#25143

@jtracey93, I saw there were some other minor changes in docs section that I hadnt saved/commited.
I also a conflict on the policies,json file that Im not sure what is it about, probably can just discard, but I will check

@jtracey93, I saw there were some other minor changes in docs section that I hadnt saved/commited. I also a conflict on the policies,json file that Im not sure what is it about, probably can just discard, but I will check

Cool dont forget to update this page too docs/wiki/ALZ-Deprecated-Services.md

@jtracey93, changed the ALZ-Deprecated-services file. It seemed to be only focused on policy changes so I did minor changes to reflect changes in services and policies. Let me know if I should change anything.


Added a version restriction to yard dependency

There were two errors due to some breaking changes in yard 0.9.0.
Added a pessimistic version to the yard dependency in the gemspec to fix the current version. Will send another PR for the 0.9.0 fixes.

See: #14

Released as V0.2.3


Change metric value from float to doble

What does this PR do?
It changes the metric submission type in the rt_loader from float to double
Motivation
This customer has some big number metrics missing: https://github.com/DataDog/integrations-core/issues/7476
looks like Python automatically handles big nums

Python supports a "bignum" integer type which can work with arbitrarily large numbers. In Python 2.5+, this type is called long and is separate from the int type, but the interpreter will automatically use whichever is more appropriate. In Python 3.0+, the int type has been dropped completely.

But we're limited by the c binding.

Finished the PR, and checked that switching to double actually resolves the precision issues we had (see AC-179 JIRA card for details)


Allow insecure registry login

Hello flux team! I am a maintainer for Zarf, we want to allow users to create flux helm releases to our internal registry which will be within the cluster and over http. Currently this functionality does not work since the request is routed through https when we login to the registry. The error message on the helmrelease looks like:
HelmChart 'flux-system/flux-system-podinfo' is not ready: unknown build error: failed to login to OCI registry: Get "https://<IP_ADDRESS>:5000/v2/": http: server gave HTTP response to HTTPS client

Our helmrepo spec looks like the following:
spec:
  type: oci
  interval: 30s
  insecure: true
  url:  oci://<IP_ADDRESS>:5000/stefanprodan/charts
  provider: generic

In order to solve this I've added the loginOptInsecure option when the repo.spec is insecure and the registry requires login. I've verified this works by building a local image and testing it out with my cluster.
It does however break some of your tests. For example the test TestHelmChartReconciler_reconcileSourceFromOCI_authStrategy/HTTP_with_basic_auth_secret breaks like this:
failed to login to OCI registry: insecure registry example.com:35993 is not valid: invalid host "example.com"

If I set this line to <IP_ADDRESS> rather than example.com it will work but https test cases will fail. I'm having trouble figuring out which package down the chain is flagging example.com as invalid given the error above. If you guys know the solution here it would be appreciated!
server.registryHost = fmt.Sprintf("example.com:%d", port)
As an alternative I believe it would work if we changed the test layout to have the http tests use <IP_ADDRESS> and the https tests use example.com, but I will leave that up to y'all.

Do you mind instead making the change in
	clientOpts, certsTmpDir, err := getter.GetClientOpts(ctxTimeout, r.Client, repo, normalizedURL)

in GetClientOpts you can add the following before returning the options:
	hrOpts.RegLoginOpts = append(hrOpts.RegLoginOpts, helmreg.LoginOptInsecure(obj.Spec.Insecure))

This would make it simpler to read, and I believe a better place for this change.

As an alternative I believe it would work if we changed the test layout to have the http tests use <IP_ADDRESS> and the https tests use example.com

I suspect it has something to do with our mock dns. So yes having an option to disable it and just use localhost for http tests should do it.

Yes I agree that this is a much better place to add that. Thanks for the tip! Tests should be passing now as well

You have to remove the following
	mockdns.UnpatchNet(net.DefaultResolver)
	defer func() {
 	  testRegistryServer.dnsServer.PatchNet(net.DefaultResolver)
	}()

from TestHelmChartReconciler_buildFromTarballArtifact

I have made changes on the server configuration in an other commit. Please add a test case in helmchart_controller_test.go. You can use the server setup with basic authentication, see:
https://github.com/fluxcd/source-controller/blob/0c81d04c8939903d2861a70c62571208afc9c303/internal/controller/suite_test.go#L308

The test TestHelmChartReconciler_reconcileSourceFromOCI_authStrategy/HTTP_with_basic_auth_secret already exists which tests the path we are looking for, however I am not sure why it wasn't failing previously. It does login to the server, I verified this by changing the password to be incorrect in test setup and watching the test fail. Maybe different registries have different flows, I'm not sure. This fix does make behavior work for my use case.
Additionally, I am changing the server.registryHost back to <IP_ADDRESS> in the insecure case as otherwise I receive the following error in the previously mentioned test:
failed to login to OCI registry: insecure registry localhost:61367 is not valid: invalid host "localhost"
Reason: "AuthenticationFailed"

TestGetClientOpts_registryTLSLoginOption is failing. Also can you rebase?

@souleb Should be good now

@AustinAbro321 please squash all commits into one.

Done


I found a new device that can run this version of OpenWRT!

I'm unsure if this is the right place to put it but here it goes:
I found this device on AliExpress and looking at the specifications I noticed that it uses the same chip as the USB sticks, So I bought it, dumped the stock firmware (adb is enabled from the factory, but the device is not rooted) and immediately flashed openstick. To my surprise it didn't work, I was stuck on the bootloader, so I decided to flash your version of OpenWRT and Voilà! A tiny (not so tiny) battery-powered device that can run OpenWRT for $20!
Anyways, If you find this as interesting as I did and want more information about the device just let me know and I'll post it here or somewhere else.

I found this device on AliExpress and looking at the specifications I noticed that it uses the same chip as the USB sticks, So I bought it, dumped the stock firmware (adb is enabled from the factory, but the device is not rooted) and immediately flashed openstick. To my surprise it didn't work, I was stuck on the bootloader, so I decided to flash your version of OpenWRT and Voilà! A tiny (not so tiny) battery-powered device that can run OpenWRT for $20!

Woah, now that's fascinating! If you don't mind removing the cover plate, I'd like to know its hardware specs (RAM, ROM etc). Also  does the modem and WiFi work after flashing OpenWRT?

The WiFi works, the modem... I haven't been able to try it yet 'cause I don't own a SIM card. I will show what's under the shield if it's not soldered but when I checked the build.prop I saw 400something megabytes of RAM, and the firmware dump is about the same size as the original stick so it should have a similar amount of storage. The device runs a version of Android 4.4.4 built on 2024 and the webUI has dramatically improved. Another thing I'd like to try is flash the firmware of this device onto the stick and see if it works.

The device runs a version of Android 4.4.4 built on 2024 and the webUI has dramatically improved.

Interesting, Can you send me the apk file? I'm interested if there's some changes with the backend code as well.
Thanks.

I will upload the stock firmware folder with the different partitions to the cloud and paste the link here, that way you can study the new UI better. If that wont work for you just let me know and i'll upload only the apk.
Here's the link: Uploading...

I will upload the stock firmware folder with the different partitions to the cloud and paste the link here, that way you can study the new UI better.

Thank you! @samthelion17.

I managed to get openstick working by replacing all .bin files in the 'base' folder with the ones I originally dumped from the device.


CATS version2023 netcdf input variables - tide_currents

Hi everyone,
I am new to working with tides and am trying to compute tidal currents for a specific location in the Southern Ocean using the CATS 2008-version2023 netCDF file.
When using pyTMD.compute.tide_currents, I encountered an error because the OTIS.py script appears to be looking for the variables uRe and uIm. However, the version of the CATS model I am using only provides transports (variables named URe and UIm) rather than velocities. I assume the same applies to the meridional component (VRe/VIm).
I’m unsure how to handle this mismatch. Is there a way to adapt pyTMD to work with transport variables, or is additional processing required to convert transports to velocities?
I apologize if this is a basic question, but I’m currently stumped and would appreciate any guidance.
Cheers,
Viktoria

Hi @VikNikolaus ,
You're absolutely right, the variable names changed from the (pre-release) version I have. The units might also be different. I'll figure out exactly what was done and get it fixed. Sorry about that!

Should be fixed in main. Sorry about that. I should have checked for changes upon the release of TMD3.


⚠ Samsung has degraded performance

In 5234c3d, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2273 ms

Resolved: Samsung performance has improved in fc5f5d5.


Silent failure on put

I'm using<EMAIL_ADDRESS>and encountered a weird silent error.
I'm trying to run saga per component I display on page.
When I have 100 of them everything works fine, but when I have 200 of them it seems to fail on put(channel, action) or put(action) if communicating through the  store.
Code for saga looks like this:
function* mySaga(someChannel, id1, id2) {
  try {
    while(true) {
      const variable = yield select((state) => { return something; });
      console.log("before", id1);
      yield put(someChannel, someAction)
      console.log("after", id1);
      yield take(["string1", "string2"])
    }
  }
  catch(error){
    console.error("error in saga", error);
  } finally {
    console.info("finally executed")
  }
}

When I have 100 components everything works fine. I see before and after logged.
But when I have 200 components I see only before and no console logs from catch or finally.
As I don't have any error thrown at face it's hard for me to debug what might be wrong.
These sagas are spawned from other saga with usage of yield spawn(mySaga, someChannel, id1, id2)
channel is created by const someChannel = yield call(channel, buffers.expanding(200)); but as I mentioned before it doesn't matter if I use put(channel, action) or just put(action) the same thing happens.

I tried even more simplified example to reduce the noise:
function* mySaga(someChannel, id1, id2) {
  try {
      console.log("before", id1);
      yield put(someChannel, someAction)
      console.log("after", id1);
  }
  catch(error){
    console.error("error in saga", error);
  } finally {
    console.info("finally executed")
  }
}

Same thing happens. With 200 it's hanging on put. With 100 everything is executed properly and finally is called.

Could u provide a simple webpackbin with issue reproduced there?

The given dummy code
    const N = 4000;
    for(var i = 0 ; i < N; ++i) {
      yield put({type: 'TEST' });
    }

results in RangeError: Maximum call stack size exceeded as exec and flush methods (scheduler.js) are calling each other.
Chrome: Version 56.0.2924.87 (64-bit)
{
  "name": "redux-saga",
  "version": "0.14.3",
  ...

Didn't have the issue on the latest FF even for N = 20000.
Hope that this is related to Machiaweliczny's issue.

@draganSm
I dont think thats connected, would be noticeable and the issue would include info about it. The problem u are referring too is being fixed though and gonna be merged in soon.

I started looking into this.
Here's a webpackbin that reproduces the issue: https://www.webpackbin.com/bins/-Ki6juosjlVKWfyw7-_O
(note: it's better to use browser devtools than the webpackbin console log because it's so noisy)
Things I noticed:

It does not seem to be a problem when using a branch with the scheduler fix for #888  (tested locally)
The workaround suggested for #605 with adding a trivial noop delay seems to work, though I don't know why

I've just released a new version with #888 fix, should we call this resolved and reopen if needed later? cc @wilsaj @Machiaweliczny

Looks like it's fixed for this specific test case at least.:
redux-saga 0.14.6(broken) : https://www.webpackbin.com/bins/-Ki6juosjlVKWfyw7-_O
redux-saga 0.14.7(fixed) : https://www.webpackbin.com/bins/-KiB89zk_PXidxlFEIfg


Add gradual deployments documentation for Durable Objects and the Cf-Worker-Version-Key header.

We're postponing documentation for the version key header.
I've opened a dedicated PR for gradual rollouts docs here: https://github.com/cloudflare/cloudflare-docs/pull/13564

Reopening so that we don't forget to do this with rename

I'll pick it back up now.


Fixed host_header changes not applying on config

I noticed host_header changes would only take effect on add, not on config.
This seems to be because is_new_port_host_provided is checking to see if the binding combo is already included, which it never will be. This prevents the binding being added on line 79. This commit just flips the logic.
It also fixes an edge-case where a config change with a host-header of localhost-foo -> localhost wouldn't get applied (since technically http/*:80:localhost is included in http/*:80:localhost-foo).

Fixes #135

please sign the CLA Please sign the CLA here.

:+1:


german.model done with skip-gram or CBOW?

you say 'I found the following parameter configuration to be optimal to train german language models with word2vec:
a corpus as big as possible (and as diverse as possible without being informal)
filtering of punctuation and stopwords
forming bigramm tokens
using skip-gram as training algorithm with hierarchical softmax
window size between 5 and 10
dimensionality of feature vectors of 300 or more
using negative sampling with 10 samples
ignoring all words with total frequency lower than 50'
so, you used skip-gram and not CBOW for training. what were the differences?
can one also access the bigram frequencies from german.model?

you used skip-gram and not CBOW for training. what were the differences?

Skip-Gram with Hierarchical Softmax simply achieved better evaluation results than CBOW. Both architectures had nearly the same accuracy on syntax questions, but the Skip-Gram model answered 7% of the semantic questions more correctly than the CBOW model.
If you want, I can publish the corresponding figure of the evaluation results of the architecture test.

thx!
I need the uni/bi/trigram frequencies of the corpus: can I read them out from german.model?
art

Am 28.07.2017 um 17:29 schrieb Andreas Müller<EMAIL_ADDRESS>you used skip-gram and not CBOW for training. what were the differences?
Skip-Gram with Hierarchical Softmax simply achieved better evaluation results than CBOW. Both architectures had nearly the same accuracy on syntax questions, but the Skip-Gram model answered 7% of the semantic questions more correctly than the CBOW model.
If you want, I can publish the corresponding figure of the evaluation results of the architecture test.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/devmount/GermanWordEmbeddings/issues/4#issuecomment-318684541, or mute the thread https://github.com/notifications/unsubscribe-auth/AYEo3xptiLSCtoF46L8ObdZVSx_8B9Jmks5sSf5ZgaJpZM4Ompas.

You can create the vocabulary out of the model using
python vocabulary.py german.model german.model.vocab

This gives you the list of all distinct words in the model, stored in german.model.vocab. You can now simply count the words containing an underscore to get the number of bigram tokens. The list also contains a number of occurences in the corpus for each word. Is this what you want?

sorry, aber ich krieg wieder das leidige: 'ascii' codec can't encode character u'\u2020' in position 0: ordinal not in range(128)
art

On 29. Jul 2017, at 02:36, Andreas Müller<EMAIL_ADDRESS>wrote:
vocabulary.py german.model german.model.vocab

muss wohl auf python 3 umsteigen, aber dann laufen ne menge meiner alten scripts nicht mehr…
a

On 29. Jul 2017, at 12:46, Arthur Jacobs<EMAIL_ADDRESS>wrote:
sorry, aber ich krieg wieder das leidige: 'ascii' codec can't encode character u'\u2020' in position 0: ordinal not in range(128)
art

On 29. Jul 2017, at 02:36, Andreas Müller<EMAIL_ADDRESS><EMAIL_ADDRESS>wrote:
vocabulary.py german.model german.model.vocab

@matinho13 Sofern du Linux verwendest können python2 und python3 parallel installiert und verwendet werden, einzig die Script aufrufe ändern sich, zb.:
python2 legacy_py2_script.py
python3 script.py

Funktioniert sicher auch unter Windows, habe ich aber noch nie ausprobiert.

@matinho13: Die Lösung von @gcarq hab ich erfolgreich auch unter Windows 10 getestet. Einfach das LinuxSubSystem unter Windows aktivieren, falls noch nicht vorhanden Python3 installieren
sudo apt-get install python3

pip/pip3 installieren und dann per
pip install gensim

bzw. pip3 install gensim für Python3 gensim installieren.


Problems with lost Blocks

Hello,
i have massive problems with Blocks. Some are double some missing.. Here some errors from my logs:
findblock:
`2017-11-01` 6:12:22 - INFO --> Starting RPC block detecion, blocks are stored in Database
2017-11-01 6:12:22 - INFO --> | Blockhash            |          Height |     Amount | Confirmations |                Difficulty |               Time |
2017-11-01 6:12:22 - INFO --> |<PHONE_NUMBER>0015dba... |          513200 |     5.0001 |            42 |<PHONE_NUMBER>6881 | 2017-11-01 04:31:5 |
2017-11-01 6:12:22 - INFO --> |<PHONE_NUMBER>0015dba... |          513200 |          0 |            42 |<PHONE_NUMBER>6881 | 2017-11-01 04:31:5 |
2017-11-01 6:12:22 - CRIT --> Unable to add block: (513200)<PHONE_NUMBER>0015dba916630596356c865acf554cbb903c7a5cb0edbe3b8c6a67: SQL Query failed: Duplicate entry '513200-00000000000015dba916630596356c865acf554cbb903c7a5cb0edbe3' for key 'height'

prop-payout
2017-10-31 23:39:58 - CRIT --> No shares found for this block, aborted:<PHONE_NUMBER>-10-31 23:40:01 - INFO --> |      Block | ID    |        Username |           Valid |      Invalid |   Percentage |                  Payout |                Donation |                     Fee |                   Bonus | 2017-10-31 23:40:01 - CRIT --> No shares found for this block, aborted:<PHONE_NUMBER>-10-31 23:40:03 - CRIT --> Cronjob is currently disabled due to errors, use -f option to force running cron. 2017-10-31 23:41:03 - CRIT --> Cronjob is currently disabled due to errors, use -f option to force running cron. 2017-10-31 23:41:05 - INFO --> |      Block | ID    |        Username |           Valid |      Invalid |   Percentage |                  Payout |                Donation |                     Fee |                   Bonus | 2017-10-31 23:41:05 - ERROR --> E0062: Block has no share_id, not running payouts 2017-10-31 23:42:03 - INFO --> |      Block | ID    |        Username |           Valid |      Invalid |   Percentage |                  Payout |                Donation |                     Fee |                   Bonus | 2017-10-31 23:42:03 - CRIT --> No shares found for this block, aborted: 513059

SOme coins handle blocks differently and have a dupe block for different purposes. Search the issues or contact you blockchain support to get help :-)

I cleared this problem. It was because of my rewardRecipients settings in unomp. I had 3 times the same address. So, now i have deleted the both rewardRecipients Addresses and it works now.
But i have another problem now.. It says:
2017-11-01 8:42:48 - INFO --> |      Block | ID    |        Username |           Valid |      Invalid |   Percentage |                  Payout |                Donation |                     Fee |                   Bonus | 2017-11-01 8:42:48 - CRIT --> No shares found for this block, aborted: 513299
Can we talk in IRC?

I have now got this same error above with no shares found for block.
Create another issue? Or can we continue here?
I have tried to research this error with NOTHING that really explains or fixes it in any meaningful way. Some posts are as old as 2014, and this is the latest build of MPOS doing this.
One post that was made by you Sebastian, is that we may mark the block as paid, but there are no instructions or even hints on HOW to mark th block paid in MySQL.
Any ideas or hints please mate?
#crysx

Keep in mind this software is unsupported and you are pretty much on your own. But do check for the MySQL fix in the FAQ and the issue tracker for Bitcoin 0.16.0 related RPC issues (unsupported in MPOS).

I did that Sebastian ...
No where in the internet is there a satisfactory fix for this issue.
I posted in the most recent issue - and found that this issue is a repetitive one. So in the other post I have asked if anyone has a step by step instruction on how to delete these empty blocks records out of the DB so that the crons can move forward and not lockdown the issue.
Supported or not, surely there is someone n the world that knows how to do this and help, even if they don't actually 'fix' the problem. As long as the pool moves forward, I have no issue reimbursing anyone that loses coins from these deletions. I am not fully versed in MySQL, and would appreciate all the help I can get to get the pool moving again mate.
Thanks,
#crysx


Add docs for command line client for RPC

Adding some docs how to use the CLI Client for RPC commands
Changes from #1857 are probably necessary as well

Should the Cli-Client also be added to the system.md, as from code level its one of the three jukebox main entries.
Also it could be linked from concepts?


S2 interview disregards the endpoints' secure capabilities

Is your problem within Home Assistant (Core or Z-Wave JS Integration)?
NO, my problem is NOT within Home Assistant or the ZWave JS integration
Is your problem within ZWaveJS2MQTT?
NO, my problem is NOT within ZWaveJS2MQTT
Checklist

[X] I have checked the troubleshooting section and my problem is not described there.

[X] I have read the changelog and my problem was not mentioned there.

Describe the bug
What causes the bug?
Pairing with S2 enabled causes the device to return extra binary switch endpoints.
What do you observe?
The device should have "Binary Switch" on endpoints 5 and 6 only. This is how things are working when pairing without security enabled, I only see EP 5 and 6 for binary switch.
What did you expect to happen?
I would expect the interview to have the same results without regard to security class
I've done the following in the attached log file:
1- start up the driver
2- include the device with S2 as node number 70
(view the extra binary switch endpoints)
3- exclude the device
4- include the device
(observe only 5 and 6 binary switch endpoints)
Screenshots from nodered are included here
S2 pair:

Non secure pair:

Device information
Manufacturer:  Fibaro
Model name: Smart inject
Node ID in your network: 70 ... then 71.
How are you using node-zwave-js?

[ ] zwavejs2mqtt Docker image (latest)
[ ] zwavejs2mqtt Docker image (dev)
[ ] zwavejs2mqtt Docker manually built (please specify branches)
[ ] ioBroker.zwave2 adapter (please specify version)
[ ] HomeAssistant zwave_js integration  (please specify version)
[ ] pkg
[X] node-red-contrib-zwave-js (please specify version, double click node to find out)
[ ] Manually built from GitHub (please specify branch)
[ ] Other (please describe)

Which branches or versions?
node-red-contrib-zwave-js 5.1.2
Did you change anything?
no
If yes, what did you change?
No response
Did this work before?
Don't know, this is a new device
If yes, where did it work?
No response
Attach Driver Logfile
zwave_07sept21.log

Looks like the driver incorrectly uses the node's secure command list to query the individual endpoints when it should be asking the endpoints for their secure commands.

@crxporter can you test https://github.com/zwave-js/node-zwave-js/pull/3298 please? The bot should post an install command for an updated version there shortly.
Please re-interview the device (re-inclusion isn't necessary) and make another log.

@marcus-j-davies has made a "special" version for me to test this. I'll get it done in a few hours once I'm back home from work today.
Thank's for the quick help! I'll provide the new log later today!

Alright - it's worked!
I've got a new log for you. It has this device as Node 72. In the log I did the following:
1- include the device with S2, wait for the first interview
2- restart the system, interview again
3- update to the beta including #3298
4- restart the system, interview
The final interview returned only the expected Binary Switch endpoints and it was much faster than the previous interviews.
zwave_08sept21.log
And the log, as promised. Please let me know if I can provide any more information.

One minor note that might be important: the final interview did show "interview failed" before showing "interview complete"
Once it was "complete" everything looked as expected.

One minor note that might be important: the final interview did show "interview failed" before showing "interview complete"
Once it was "complete" everything looked as expected.

You can safely ignore that one.
I really only should react if it was the final attempt, before handing it off to userland

I've noticed that too. S2 is a bit better in terms of communication. When non-secure or S0 commands couldn't be decoded, the nodes just silently didn't respond. Now the nodes tell us about the decoding error and that causes the interview to abort instead of dropping the requests. We should be a bit more forgiving here.
Also the device exhibits a communication pattern that's not entirely in line with the specs - and that causes the error originally:
# zwave-js requests a value:
2021-09-08T19:49:18.008Z DRIVER » [Node 072] [REQ] [SendData]
                                  │ transmit options: 0x25
                                  │ callback id:      181
                                  └─[Security2CCMessageEncapsulation]
                                    │ sequence number: 24
                                    └─[BinarySwitchCCGet]

# The device responds with a corrupted command:
2021-09-08T19:49:18.034Z DRIVER « [Node 072] [REQ] [ApplicationCommand]
                                  └─[Security2CCMessageEncapsulation] [INVALID]
                                      error: Security2CC_CannotDecode

# zwave-js creates a new nonce and sends it to the device, which should now repeat the last command with its own nonce attached
2021-09-08T19:49:18.057Z DRIVER » [Node 072] [REQ] [SendData]
                                  │ transmit options: 0x05
                                  │ callback id:      182
                                  └─[Security2CCNonceReport]
                                      sequence number:  25
                                      SOS:              true
                                      MOS:              false
                                      receiver entropy: 0xfea6c15ac5476e9256e64b3aa271deaa

# The node instead sends only its own nonce
2021-09-08T19:49:18.082Z DRIVER « [Node 072] [REQ] [ApplicationCommand]
                                  └─[Security2CCNonceReport]
                                      sequence number:  130
                                      SOS:              true
                                      MOS:              false
                                      receiver entropy: 0x7bbae16bd0c1c2996bad179f2ca11d29

# which zwave-js interprets as "hey, I didn't understand your last command" and sends it again with another new nonce
2021-09-08T19:49:18.118Z DRIVER » [Node 072] [REQ] [SendData]
                                  │ transmit options: 0x25
                                  │ callback id:      181
                                  └─[Security2CCMessageEncapsulation]
                                    │ sequence number: 26
                                    │ extensions:
                                    │ · type: SPAN
                                    │   sender EI: 0x970bcc9e3a86e7f40bd5a7daa8189bce
                                    └─[BinarySwitchCCGet]

# causing the node to send yet another nonce
2021-09-08T19:49:18.195Z DRIVER « [Node 072] [REQ] [ApplicationCommand]
                                  └─[Security2CCNonceReport]
                                      sequence number:  131
                                      SOS:              true
                                      MOS:              false
                                      receiver entropy: 0x2354b541b675941fb82866218a86bef9

and at that point zwave-js gives up.
We should probably use the nonce in return to our nonce to set up a new shared encryption state and just request the switch state without attaching a new nonce.
But: I don't think the device is behaving correctly in line with the specs here. This might be worth reporting to Fibaro.

Yup,
In the case of the UI, I am passing the interview error state (causing the UI to say, "it broked" - without taking into account the other 4 retries).
I'm surprised I didn't catch this before

So, IMO the PR is good to go. I've raised issues for the other things.

I believe I've found a firmware update for the fibaro. Flag me in another issue if you want to see results of another interview after updating.

You can update?! I thought they require you to buy their Home Center stuff to do updates.

Yeah so it seems like I was wrong about that.
Just saw a forum post about the update then joined their forum thinking I could download it...
false alarm I think


A small suggestion for improvement for PowerToys Run

Description of the new feature / enhancement
You can enter commands in PowerToys Run such as: ping. But if I enter "ping <IP_ADDRESS>" I can't execute the whole thing directly via Enter in the console. If I enter only "ping" is recognized as a command and executed, brings just not so much :D
Scenario when this would be used?
If you want to type e.g. "ping <IP_ADDRESS>" to check if a host is responding to ICMP requests
Supporting information
No response

@J4n-T PT run detects commands such as ping and when you add more content to the end, it cannot find a file with that name any longer.
You can enable or disable the feature however where typing > at the start tells PT run to treat the following content as a command.
Make sure you have this enabled and you can run > ping <IP_ADDRESS>.
Does this do what you need, or are you looking to add an option to recognize whole commands without the > prefix?

I had hoped that it works without prefix but that is not so bad for me now.

Just found the setting for this, so close the issue now :D

You can toggle that "Include in global result" setting too if you don't want to use the prefix. Many of the options have that ability.

yeah thanks :D


[FLINK-15050][table-planner-blink] DataFormatConverters should suppor…

…t any TIMESTAMP WITHOUT TIME ZONE types
What is the purpose of the change
User may pass any TIMESTAMP WITHOUT TIME ZONE in, e.g.:
DataTypes.TIMESTAMP(9).bridgedTo(LocalDateTime.class),
DataTypes.TIMESTAMP(9).bridgedTo(Timestamp.class),
DataTypes.TIMESTAMP(3),
new AtomicDataType(
  new LegacyTypeInformationType<>(
    LogicalTypeRoot.TIMESTAMP_WITHOUT_TIME_ZONE,
    SqlTimeTypeInfo.TIMESTAMP))
,
new AtomicDataType(
  new LegacyTypeInformationType<>(
    LogicalTypeRoot.TIMESTAMP_WITHOUT_TIME_ZONE,
    new LegacyTimestampTypeInfo(7)))

In such situations, we should return proper converters.
Brief change log

Let DataFormatConverters support any TIMESTAMP_WITHOUT_TIME_ZONE types
Add tests to verify

Verifying this change
This change is already covered by existing tests, such as DataFormatConvertersTest).
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (yes / no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (yes / no)
The serializers: (yes / no / don't know)
The runtime per-record code paths (performance sensitive): (yes / no / don't know)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: (yes / no / don't know)
The S3 file system connector: (yes / no / don't know)

Documentation

Does this pull request introduce a new feature? (yes / no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)

LGTM after travis success.


Expose mode from Luv.File.Stat.t as an integral or expose equality

mode is a Mode.numeric
There is no good way to get the file type, normally you would AND with S_IFMT and test for equality with all the S_* types.
Testing the bits with Mode.test is not enough since the bits are shared between different file types.
Currently the only way I found to figure the filetype was doing:
    let mode = (Obj.magic lst.mode : int) in

And then doing all the mask and comparison myself, see https://github.com/ocaml-multicore/eio/pull/339

This is indeed an awkward part of the API and will need to change. Historically, it became this way because S_IFMT was added later than the other bits. However, I see that this is no longer being used in eio_luv at the moment, so I think it can be delayed, after a maintenance release of Luv.

Thank you for looking into this.
It's not a pressing matter for us as I ended up just grabing the stat directly through the Unix module.
There's also the future of luv/libuv being phased out in EIO in favor of eio_posix + some windows backend, not due to luv, more due to how libuv associates handles with loops which make it cumbersome to support in EIO.


[CH] Make Partition::empty() thread safe

Make Partition::empty thread safe
What changes were proposed in this pull request?
(Please fill in changes proposed in this fix)
(Fixes: #3821)
How was this patch tested?
(Please explain how this patch was tested. E.g. unit tests, integration tests, manual tests)
CI
(If this patch involves UI changes, please attach a screenshot; otherwise, remove this)

duplicated with https://github.com/oap-project/gluten/issues/3722


Move PADD to a separate service container

This reduces the changes we have to make to the official Pi-hole
Docker container and aligns with the ethos of each container running
a single service.
Resolves: https://github.com/klutchell/balena-pihole/issues/89
Change-type: major
Signed-off-by: Kyle Harding<EMAIL_ADDRESS>

Unfortunately padd.sh calls the pihole binary directly as well as some other stuff that expects Pi-hole to be in the same filesystem, so this may be more difficult than I thought.
Checking FTL pid:

https://github.com/pi-hole/PADD/blob/master/padd.sh#L456

Calling pihole binary:

https://github.com/pi-hole/PADD/blob/master/padd.sh#L420
https://github.com/pi-hole/PADD/blob/master/padd.sh#L494
https://github.com/pi-hole/PADD/blob/master/padd.sh#L512
https://github.com/pi-hole/PADD/blob/master/padd.sh#L529

Referencing pihole env vars:

https://github.com/pi-hole/PADD/blob/master/padd.sh#L333-L341
https://github.com/pi-hole/PADD/blob/master/padd.sh#L1182
https://github.com/pi-hole/PADD/blob/master/padd.sh#L1239

@eiddor You don't have a screen attached do you? Could you give the changes a quick look anyway? I had to pull out some clever tricks to make PADD think it was in the same container as Pi-hole.
No rush, I'm going to soak this for a week or two either way.

@klutchell I do, but I won't be around it until tonight or tomorrow.  I'll push the branch now and verify it later.  I saw a lot of your tricks flying by last night and today.  Worth it?

Worth it?

That's my biggest question right now. I learned a lot for sure, like how to call a binary that exists in another container. Also how to get the PID of a process in another container.
When the PADD container was 400MB I was about to abandon the idea, but then replacing docker with docker-cli brought it down to like 60-70MB.

When the PADD container was 400MB I was about to abandon the idea, but then replacing docker with docker-cli brought it down to like 60-70MB.

That's some Inception type behavior right there.
As an aside, is there a "force" option for balena-cli to ignore the version number?  I know I can edit the field in balena.yml but I never remember to until I get this message (which is very user unfriendly, FWIW.)
[Error]    Upstream API server/DB error: It is necessary that each application that owns a release1 that has a revision, owns at most one release2 that has a semver major that is of the release1 and has a semver minor that is of the release1 and has a semver patch that is of the release1 and has a revision that is of the release1.
[Error]    Not deploying release.
Remote build failed

@eiddor I think that has been fixed already, can you make sure you have the latest CLI installed? Neither of us should be updating balena.yml unless we are switching to a new upstream tag of the Pi-hole image.

can you make sure you have the latest CLI installed?

I was a few months behind (I never remember to update it unless I see the warning.)  I still get the message until I change the version number, though.

What's in your balena.yml version field right now? Does it match version: 2021.09.0? Can you paste it here so I can check for errors?
As a workaround you can try pushing with the --draft flag but I was sure we had removed this requirement. I'm asking in our internal chat.

What's in your balena.yml version field right now? Does it match version: 2021.09.0? Can you paste it here so I can check for errors?

I had to change it toversion: 2021.09.1 to bypass the message the first time, so this may be self-inflicted. Otherwise it's the one from the padd-service branch.
--draft worked.

Well, "worked" is relative - It pushed, but was never picked up by the device.

Yeah, draft releases will never be automatically applied to devices pinned to track latest, this is by design. You can still manually pin a device to a draft release.
I hope we aren't enforcing that semver always increases, cause it sounds like that's what's happening here. Though if you keep it at 2021.09.1 it should let you keep re-pushing and it will append -revX.

My colleague pointed out that 2021.09.0 isn't valid semver. Can you try again with 2021.9.0? If that works we should PR the change to balena.yml.

Though if you keep it at 2021.09.1 it should let you keep re-pushing and it will append -revX.

Ahh ok, that makes sense.

My colleague pointed out that 2021.09.0 isn't valid semver. Can you try again with 2021.9.0? If that works we should PR the change to balena.yml.

That worked!

What's in your balena.yml version field right now? Does it match version: 2021.09.0? Can you paste it here so I can check for errors?

I had to change it toversion: 2021.09.1 to bypass the message the first time, so this may be self-inflicted. Otherwise it's the one from the padd-service branch.

@eiddor I'm glad that changing the version to 2021.9.1 worked for you, but I'm now super curious to learn what did the version field have previously while you where getting v?

Upstream API server/DB error: It is necessary that each application that owns a release1 that has a revision, owns at most one release2 that has a semver major that is of the release1 and has a semver minor that is of the release1 and has a semver patch that is of the release1 and has a revision that is of the release1.

@thgreasi

I'm happy to hear that changing the version to 2021.9.1 worked for you, but I'm now super curious to learn what did the version field have previously while you where getting v?

Originally, it was 2021.09.0, then I got the message and changed it to 2021.09.1

@klutchell PADD appears to be working fine with my display, however it seems to be ignoring my font env settings and is using the defaults:

Can you try it with CONSOLE_FONT=ter-120n instead?
This is a breaking change but I don't think I've ever documented how to set the font size so hopefully not too many folks are depending on it.
I had to switch the way we are setting the console font because the new service is using alpine as a base image. I could force some backwards compatibility by converting FONTSIZE to CONSOLE_FONT syntax if the latter isn't set I guess?

CONSOLE_FONT=ter-120n worked - Thanks!
Yeah, I think I discovered it in Dockerfile one day and changed it there, and then you mentioned in an issue that it could be set as a variable.  It definitely makes things more readable on my official RPi 7" screen.

I pushed a commit to use FONTSIZE if CONSOLE_FONT is unset. Can you give it a try by unsetting CONSOLE_FONT?

Pushing now - Looks good!  Quite crafty.
19.09.21 12:22:32 (-0500)  padd  Setting console font to ter-120n...
19.09.21 12:22:32 (-0500)  padd  Starting PADD...

Decided this probably isn't worth merging, but still a very cool exercise to have tried!


Explore shifting usage of runtime browser demo to app shell.

To allow deleting runtime browser demo, which is a very old version of app shell.
Need to explore speed to load, default UI, and any runtime testing interactions and make sure those are suitable in modern app shell before we can delete.
@sjmiles

The runtime browser is used for automated testing here:
https://github.com/PolymerLabs/arcs/blob/master/runtime/test/demo-flow-test.js
As part of that sigh.js builds the browser demo bits in the webpack target.

The runtime browser is used for automated testing here:
https://github.com/PolymerLabs/arcs/blob/master/runtime/test/demo-flow-test.js
As part of that sigh.js builds the browser demo bits in the webpack target.

Not quite, the only parts of browser/demo that is used in the test is the manifest and its dependencies. webpack isn't a dependency for any runtime test.

Sweet, maybe it will be easier than I thought. I'm hoping we can just find a way to route the recipes into shell, and maybe have a way for it to start with suggestions pre-opened.

@sjmiles notes we can route the recipes today via solo= or manifest= query params. So AFAIK we could delete runtime/browser right now, and just keep the recipe bits, and have folks shift to using and bookmarking for convenience a url like http://localhost:5001/arcs/shell/apps/web/index.debug.html?arc=*&user=<their preferred user id>&solo=http://localhost:5001/arcs/runtime/browser/demo/recipes.manifest and any feature requests from there around performance or auto-open suggestions or whatever we can address separately.
And we can delete the webpack in sigh.
Thoughts?


Cannot add x-amz-server-side-encryption header to S3 upload part

I have an S3 bucket with a policy restricting to only KMS encryption (similar to http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html but with 'aws:kms'). I am attempting to do a multipart upload as below:
multipart = self.s3.create_multipart_upload(
    Bucket=bucket, Key=key, ServerSideEncryption='aws:kms')
part = self.s3.upload_part(Bucket=bucket, Key=key,
                           UploadId=multipart['UploadId'],
                           PartNumber=1, Body=fh)

This fails, apparently because the upload part request does not include an x-amz-server-side-encryption header.
  File "/home/jmou/src/blocks/_blocks_venv/local/lib/python2.7/site-packages/botocore/client.py", line 328, in _api_call
    raise ClientError(parsed_response, operation_name)
botocore.exceptions.ClientError: An error occurred (AccessDenied) when calling the UploadPart operation: Access Denied

Unlike PutObjectRequest, UploadPartRequest appears not to have a ServerSideEncryption member to set the x-amz-server-side-encryption header. This header is documented at http://docs.aws.amazon.com/AmazonS3/latest/API/mpUploadUploadPart.html (this documentation appears incomplete since aws:kms is not listed as a valid value).
Without the bucket policy, the code sample executes successfully (and the resulting object is encrypted); but this no longer enforces that all uploads use encryption.
The boto3 documentation at https://boto3.readthedocs.org/en/latest/reference/services/s3.html also states that SSECustomerAlgorithm can be set to aws:kms, but AFAICT that only sets the header for non-KMS SSE; the documentation appears to be faulty in listing aws:kms as an example value.

Actually, it appears that x-amz-server-side-encryption is not supported by the REST API when doing an upload part operation. Maybe this is actually a bug in the REST API?

I can confirm this issue. It looks like that we have to update our model so that you can set the x-amz-server-side-encryption headers for the UploadPart operation, which looks like a valid header when uploading parts: http://docs.aws.amazon.com/AmazonS3/latest/API/mpUploadUploadPart.html

Any update on this? It would be great to enforce KMS on large uploads.

aws:kms encryption is specified on the CreateMultipartUpload operation and not on each part. Amazon S3 currently supports aws:kms SSE encryption for the following operations: PutObject, CreateMultipartUpload, CopyObject, POST object (e.g., form style requests). Specifying aws:kms encryption on the UploadPart operation is invalid as it is not an accepted value.
There is an issue in that we do not support  ServerSideEncryption for UploadPart. However, AES256 is the only supported option for ServerSideEncryption for the UploadPart operation: see http://docs.aws.amazon.com/AmazonS3/latest/dev/KMSUsingRESTAPI.html. I'll work on fixing this, but it won't fix you bucket policy issue.
I'm not sure it's possible based on this document (http://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html), but you'll need to modify your bucket policy to only enforce KMS encryption on Initiate Multipart Upload operations. As far as getting this work via a policy to enforce KMS on all multi-part uploads, I suggest starting a forum thread on the Amazon S3 developer forums so that you can interact directly with S3 engineers to see if there is a workaround or if they will consider it for a feature request: https://forums.aws.amazon.com/forum.jspa?forumID=24


[EPIC] techdebt, refactoring, improvements, design changes

This epic is intended to collect tech debt, refactoring, improvements as well as design changes.
That are not necessarily user focused.
Items that are good candidates for this epic, are:

refactorings that help simplify the code (clean up)
design changes that help make the code/software more robust (resilience/reliability)
tech debt that when addressed makes it easier for the developers to reason about the code as well as extend it (reduction of risk, speed of development)

Let's just use kind/refactoring or kind/tech-debt to track all refactoring issues.


Manage node account if the observer self delegation falls below minimum

### Tasks
- [ ] Pause Inbound if observer list changes
- [ ] Manage node account in staking hooks

fixed as part of this https://github.com/zeta-chain/node/pull/829


1 new exercise: binary-search

Hi,
please find my exercise to the COBOL track: binary-search
no GOBACKs were used, instead EXIT PROGRAM was used (hopefully cobolcheck does not warn)

It appears the .cut file was an old version, fixed on my branch.

Regarding
01 Teibel.
         02 Taulukko               PIC 999 OCCURS 1 TO 20
                                   DEPENDING ON IDX.

 But subscripts could be changed to INDEXes if needed.

Suggestion only. As long as it works if the bottom line
On Sun, 21 Apr 2024, 4:44 pm Teppo Saari, @.***> wrote:

I haven't had the need to do any INDEX operations like SEARCH. But
subscripts could be changed to INDEXes if needed.
—
Reply to this email directly, view it on GitHub
https://github.com/exercism/cobol/pull/136#issuecomment-2067962981, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AABTFVJQIVNVE7ICEYE7RZTY6N35LAVCNFSM6AAAAABGQRWWROVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDANRXHE3DEOJYGE
.
You are receiving this because you commented.Message ID:
@.***>


Hello Webpack

In this milestone I've:

An app that shows greetings in different languages every time you refresh the page.

Hello @Felix45! Thank you for the review!
Now that I've done the required changes my project should be approved!


USHIFT-2555: detect existing VM in scenario.sh create

virt-install reports errors, but with the retry loop it can take a
while before the script exits when the VM already exists. Add a check
for that case and return early. Treat it as not an error, since the
instruction is to ensure the VM exists and it does.
/assign @ggiguash

/lgtm

/override ci/prow-metal-periodic-test
Overriding test for non-production code change.

/override ci/prow/metal-periodic-test


Cannot find infix operators

In source code like [1,2] ++ [3,4], hovering ++ shows the type, but when trying to go the definition, it shows No definition found. However, in code like (++) [1,2] [3,4], it works.

Interestingly this only seems to be an issue in expressions, in functional patterns, go-to-definition works fine on infix operators:
last (_ ++ [x]) = x


API Design

I've been fighting with myself over the API design now for a little while. There's a few ways I can imagine it working. Firstly, do a ripple down, where all relations are contained in each record in the indexing:
{
  "tasks": [
    {
      "id": 1,
      "task_name": "foobar",
      "time_entries": [
        {
          ...
        },
        ...
      ],
      "tags": [
        ...
      ]
    },
    ...
  ]
}

and "show"s would work similarly, but limited to the one record and all its relations. I think the strength of this design is that it would make the API user's life easier, since once GET would return essentially all the user's data. That is also the downside to this design, since each request would be enormous.
Looking for suggestions on other designs for the API. In the meantime, I will be reading other APIs' documentations.

There's a good definition of how to do this on http://jsonapi.org


fatal error: 'NGT/Capi.h' file not found

Hi @lerouxrgd
I tried building ngt-rs today and it failed. This is the error I see:
  /home/caleb/tmp/ngt-rs/target/debug/build/ngt-sys-8ce361414492c0ac/out/include/NGT/NGTQ/Capi.h:107:10: fatal error: 'NGT/Capi.h' file not found

I checked, and the file NGT/Capi.h is present:
~/tmp/ngt-rs/target/debug/build/ngt-sys-8ce361414492c0ac/out/include/NGT
$ ls -lah
Permissions Size User  Date Modified Name
.rw-r--r--  6.2k caleb  3 Sep 21:44  SharedMemoryAllocator.h
.rw-r--r--   13k caleb  3 Sep 21:44  Tree.h
.rw-r--r--  1.4k caleb  3 Sep 21:44  Version.h
.rw-r--r--   14k caleb  3 Sep 21:44  ObjectRepository.h
.rw-r--r--   18k caleb  3 Sep 21:44  Node.h
.rw-r--r--  7.7k caleb  3 Sep 21:44  Thread.h
.rw-r--r--  5.8k caleb  3 Sep 21:44  ArrayFile.h
.rw-r--r--   20k caleb  3 Sep 21:44  MmapManagerImpl.hpp
.rw-r--r--  2.6k caleb  3 Sep 21:44  MmapManager.h
.rw-r--r--   17k caleb  3 Sep 21:44  ObjectSpace.h
.rw-r--r--   54k caleb  3 Sep 21:44  Optimizer.h
.rw-r--r--   860 caleb  3 Sep 21:44  MmapManagerException.h
.rw-r--r--  2.4k caleb  3 Sep 21:44  MmapManagerDefs.h
.rw-r--r--   29k caleb  3 Sep 21:44  Clustering.h
.rw-r--r--  7.9k caleb  3 Sep 21:44  Capi.h
.rw-r--r--   56k caleb  3 Sep 21:44  Common.h
.rw-r--r--   30k caleb  3 Sep 21:44  GraphReconstructor.h
.rw-r--r--  149k caleb  3 Sep 21:44  half.hpp
.rw-r--r--   22k caleb  3 Sep 21:44  GraphOptimizer.h
.rw-r--r--  4.1k caleb  3 Sep 21:44  Command.h
.rw-r--r--   40k caleb  3 Sep 21:44  Graph.h
.rw-r--r--   254 caleb  3 Sep 21:44  version_defs.h
.rw-r--r--   36k caleb  3 Sep 21:44  PrimitiveComparator.h
.rw-r--r--   31k caleb  3 Sep 21:44  ObjectSpaceRepository.h
.rw-r--r--   59k caleb  3 Sep 21:44  Index.h
.rw-r--r--  2.6k caleb  3 Sep 21:44  HashBasedBooleanSet.h
.rw-r--r--  1.7k caleb  3 Sep 21:44  defines.h
drwxrwxr-x     - caleb  3 Sep 21:45  NGTQ

It seems to me some kind of path problem. Do you have any suggestions for what I can try to fix this, or is it something that must be changed in ngt-rs?
For completeness, I've attached the full build output.
err.log

Investigating further, I managed to compile purely the NGT source (in the git submodule) successfully, using the instructions from the NGT repo:
~/tmp/ngt-rs/ngt-sys  ±master|…1
$ ls
build.rs  Cargo.lock  Cargo.toml  LICENSE  NGT  src  target
~/tmp/ngt-rs/ngt-sys  ±master|…1
$ cd NGT/
~/tmp/ngt-rs/ngt-sys/NGT  ±(detached)|✔
$ ls
assets  CMakeLists.txt  lib      python        README.jp  samples  tests  VERSION
bin     data            LICENSE  README-jp.md  README.md  tags     utils
~/tmp/ngt-rs/ngt-sys/NGT  ±(detached)|✔
$ ls -lah
Permissions Size User  Date Modified Name
.rw-rw-r--    39 caleb  3 Sep 21:44  .git
drwxrwxr-x     - caleb  3 Sep 21:44  assets
.rw-rw-r--  2.8k caleb  3 Sep 21:44  CMakeLists.txt
.rw-rw-r--   11k caleb  3 Sep 21:44  LICENSE
.rw-rw-r--     7 caleb  3 Sep 21:44  VERSION
.rw-rw-r--   167 caleb  3 Sep 21:44  README.jp
.rw-rw-r--  7.8k caleb  3 Sep 21:44  README.md
.rw-rw-r--    56 caleb  3 Sep 21:44  .gitignore
.rw-rw-r--  8.0k caleb  3 Sep 21:44  README-jp.md
drwxrwxr-x     - caleb  3 Sep 21:44  bin
drwxrwxr-x     - caleb  3 Sep 21:44  lib
drwxrwxr-x     - caleb  3 Sep 21:44  data
drwxrwxr-x     - caleb  3 Sep 21:44  python
drwxrwxr-x     - caleb  3 Sep 21:44  samples
drwxrwxr-x     - caleb  3 Sep 21:44  tests
drwxrwxr-x     - caleb  3 Sep 21:44  utils
.rw-rw-r--  405k caleb  3 Sep 22:16  tags
~/tmp/ngt-rs/ngt-sys/NGT  ±(detached)|✔
$ mkdir build
~/tmp/ngt-rs/ngt-sys/NGT  ±(detached)|✔
$ cd build
~/tmp/ngt-rs/ngt-sys/NGT/build  ±(detached)|✔
$ cmake ..
CMake Deprecation Warning at CMakeLists.txt:4 (cmake_minimum_required):
  Compatibility with CMake < 2.8.12 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.

-- The C compiler identification is GNU 11.2.0
-- The CXX compiler identification is GNU 11.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- VERSION: 1.14.7
-- CMAKE_BUILD_TYPE: Release
-- CMAKE_BUILD_TYPE_LOWER: release
-- 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 pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Configuring done
-- Generating done
-- Build files have been written to: /home/caleb/tmp/ngt-rs/ngt-sys/NGT/build
~/tmp/ngt-rs/ngt-sys/NGT/build  ±(detached)|✔
$ ls
bin  cmake_install.cmake  CMakeCache.txt  CMakeFiles  lib  Makefile  samples
~/tmp/ngt-rs/ngt-sys/NGT/build  ±(detached)|✔
$ make
[  2%] Generating command
[  2%] Built target versiondef
[  4%] Building CXX object lib/NGT/CMakeFiles/ngtstatic.dir/ArrayFile.cpp.o
[  6%] Building CXX object lib/NGT/CMakeFiles/ngtstatic.dir/Capi.cpp.o

<snip>

[ 77%] Linking CXX executable ngtqg
[ 77%] Built target ngtqg_exe
[ 80%] Building CXX object samples/hamming-uint8/CMakeFiles/hamming-uint8.dir/hamming-uint8.cpp.o
[ 82%] Linking CXX executable hamming-uint8
[ 82%] Built target hamming-uint8
[ 84%] Building CXX object samples/l2-uint8/CMakeFiles/l2-uint8.dir/l2-uint8.cpp.o
[ 86%] Linking CXX executable l2-uint8
[ 86%] Built target l2-uint8
[ 88%] Building CXX object samples/l2-uint8-range-search/CMakeFiles/l2-uint8-range-search.dir/l2-uint8-range-search.cpp.o
[ 91%] Linking CXX executable l2-uint8-range-search
[ 91%] Built target l2-uint8-range-search
[ 93%] Building CXX object samples/cosine-float/CMakeFiles/cosine-float.dir/cosine-float.cpp.o
[ 95%] Linking CXX executable cosine-float
[ 95%] Built target cosine-float
[ 97%] Building CXX object samples/jaccard-sparse/CMakeFiles/jaccard-sparse.dir/jaccard-sparse.cpp.o
/home/caleb/tmp/ngt-rs/ngt-sys/NGT/samples/jaccard-sparse/jaccard-sparse.cpp: In function ‘void append(NGT::Args&)’:
/home/caleb/tmp/ngt-rs/ngt-sys/NGT/samples/jaccard-sparse/jaccard-sparse.cpp:78:21: warning: unused variable ‘id’ [-Wunused-variable]
   78 |       NGT::ObjectID id = index.append(index.makeSparseObject(object));
      |                     ^~
[100%] Linking CXX executable jaccard-sparse
[100%] Built target jaccard-sparse

So it seems to me that perhaps something needs to change in the build.rs?

Digging further, I've found a change that makes a difference. In build.rs:
    let bindings = bindgen::Builder::default()
        .clang_arg(format!("-F{}/include", dst.display()))
        .header(format!("{}/include/NGT/NGTQ/Capi.h", dst.display()))
        .generate()
        .expect("Unable to generate bindings");

If I change the clang_arg line to use -I instead of -F then the build works:
    let bindings = bindgen::Builder::default()
        .clang_arg(format!("-I{}/include", dst.display()))
        .header(format!("{}/include/NGT/NGTQ/Capi.h", dst.display()))
        .generate()
        .expect("Unable to generate bindings");

Is there a reason why the -F is being used instead of -I? (I don't know much about compiler flags beyond -I).

This (-I) seems to have fixed my problem.  After a successful cargo build in the ngt-rs root, I see the shared objects;
$ fd --hidden --no-ignore --glob libngt*so*
target/debug/build/ngt-sys-8ce361414492c0ac/out/build/lib/NGT/libngt.so
target/debug/build/ngt-sys-8ce361414492c0ac/out/build/lib/NGT/libngt.so.1
target/debug/build/ngt-sys-8ce361414492c0ac/out/build/lib/NGT/libngt.so.1.14.7
target/debug/build/ngt-sys-8ce361414492c0ac/out/lib/libngt.so
target/debug/build/ngt-sys-8ce361414492c0ac/out/lib/libngt.so.1
target/debug/build/ngt-sys-8ce361414492c0ac/out/lib/libngt.so.1.14.7

The tests pass:
$ LD_LIBRARY_PATH=target/debug/build/ngt-sys-8ce361414492c0ac/out/lib/ cargo test
   Compiling autocfg v1.1.0
   Compiling crossbeam-utils v0.8.11

   <snip>

   Compiling crossbeam-deque v0.8.2
   Compiling ngt v0.4.3 (/home/caleb/tmp/ngt-rs)
    Finished test [unoptimized + debuginfo] target(s) in 5.46s
     Running unittests src/lib.rs (target/debug/deps/ngt-d99b9189f1bb3463)

running 7 tests
test optim::tests::test_convert_anng_to_onng ... ignored
test optim::tests::test_optimize_anng ... ignored
test index::tests::test_basics ... ok
test index::tests::test_batch ... ok
test index::tests::test_quantize ... ok
test optim::tests::test_refine_anng ... ok
test index::tests::test_multithreaded ... ok

test result: ok. 5 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 0.30s

   Doc-tests ngt

running 2 tests
test src/lib.rs - (line 12) ... ok
test src/lib.rs - (line 32) ... ok

test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.35s

Hi, I've added a CI that runs on Unbuntu and using -F looks fine, do you have a specific setup ?
Besides, I will update NGT to 1.14.8 and I will try to use -I at the same time, as I think it should be fine to use it too.

I've released in 0.4.4.


Test on arm64 runners

@farshidtz, the issue with those arm64 runners is, in fact, related to this bug on Launchpad.
The kernel of the runner machine, 6.5.0-1015-azure, doesn't have the option GPIO_CDEV_V1 enabled, as you can see here in this action log. Therefore, when using the gpiod utilities, we encounter an error indicating the incompatibility between API V1 and V2 of libgpiod.
This issue doesn't occur with the Raspberry Pi, for example:
pi4@alsvid:~$ cat /boot/config-`uname -r` | grep GPIO_CDEV
CONFIG_GPIO_CDEV=y
CONFIG_GPIO_CDEV_V1=y
pi4@alsvid:~$

However, the main question isn't about the kernel configuration but the Debian packages themselves, since this kernel does accept the char dev interface. Since API V1 is considered deprecated, the problem lies in the versions of those packages, as shown in this action log. The versions are 1.6.3.
We could resolve this by cross-compiling our own libgpiod with the latest version or creating a Debian package ourselves and installing it.

This PR is duplicated on #57.


explicitly reject unsupported input combo for load_edges

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

Project coverage is 51.48%. Comparing base (086f95d) to head (d95659f).

Files
Patch %
Lines

src/graphql.rs
61.11%
7 Missing :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #167      +/-   ##
==========================================
- Coverage   51.48%   51.48%   -0.01%
==========================================
  Files          65       65
  Lines       10839    10850      +11
==========================================
+ Hits         5581     5586       +5
- Misses       5258     5264       +6

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

@sophie-cluml
I think it's good to share this with you.


144 critical bug assertion failed argument is undefined or null

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

Visual Studio Marketplace
GitHub release

Your semantic-release bot :package::rocket:


Storybook > Components > Email Settings New and Email Settings Create one component

Describe the bug
Email Setting New and Email Setting in these two components create one component Add story Docs, Default, Advanced.
Check all label and placeholder is different.
To Reproduce
Steps to reproduce the behavior:

Go to 'Elements/Components'
Click on 'Email Setting New'

Screenshots
.
Desktop (please complete the following information):
-OS: [Windows 10 Enterprise]
-Browser [ edge]
-Version [ 125.0.2535.92]
Smartphone (please complete the following information):NA

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Additional context
Add any other context about the problem here.

Completed -


Import fix

The original code is correct because show_labels is part of the bdd_data python package.
Removing the leading . will make the import statements absolute and not relative to the bdd_data package, which will cause an import failure.
@xanderchf, you should be using python -m bdd_data.show_labels to run the script from within the package.
I would recommend closing this PR.


Get an Account on SAP BTP to Try Out Free Tier Service Plans

Tutorials: https://developers.sap.com/tutorials/btp-free-tier-account.html
For the "Step 9: Enable Cloud Foundry environment", I couldn't find the free plan for cloud foundry. I had to go to "Entitlements" and add it to my entitlements. I could then use the free plan.

Hello @AnnikaGonnermann,
I created the subaccount on eu20 (it seems like CF free tier is only available on this region for Europe).
Thank you !

Hey @jchirk - thanks again for your feedback. We've changed the tutorial!
Best
Annika


new flask test

{"response": [{"details": "Change Summary\n\nHigh-Level Description:\n\nThis code update introduces several enhancements and bug fixes to improve the stability and functionality of the application.\n\nKey Changes:\n\n* Added new feature to handle user input validation:\n    * Implemented a new validation mechanism to ensure that user input meets specific criteria.\n    * This prevents invalid data from being processed, reducing the risk of errors.\n* Refactored code to improve performance:\n    * Optimized database queries to reduce execution time.\n    * Implemented caching mechanisms to improve response times for frequently accessed data.\n* Fixed bug in error handling:\n    * Corrected an issue where errors were not being handled properly, leading to unexpected behavior.\n    * This ensures that errors are now handled gracefully, providing a better user experience.\n* Updated third-party library to latest version:\n    * Upgraded a critical third-party library to address security vulnerabilities and improve compatibility.\n    * This ensures that the application remains secure and up-to-date."}]}

500 Internal Server Error: The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application.

{"response": [{"details": "\n$diff_file_content\n"}]}

500 Internal Server Error: The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application.


Fix BuyMeACoffee funding link

Fixes Issue

Fix BuyMeACoffee funding link

Changes proposed
Here comes all the changes proposed through this PR

Check List (Check all the boxes which are applicable)

[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] All new and existing tests passed.
[x] This PR does not contain plagarised content.
[x] The title of my pull request is a short description of the requested changes.

Screenshots
I don't think this applies here.

Ping. CC: @kaiwalyakoparkar.


Autocomplete stays open when it is unable to offer valid suggestions

Autocomplete stays open, even if it doesn't have valid suggestions
Start typing word such as "war", autocomplete pops up valid suggestions
Type "Q" and the autocomplete dialogue remains open, but cannot offer valid suggestions.

As discussed, it is finding valid suggestions, the list is trimmed down to what the fuzzy matching algorithm determines is relevant.


Create android.yml

Not sure why we should add this one here ??? Closing for now as it might be the wrong repo


ENV VAR to disable caching

would be nice to be able to toggle this using an environment var. I'd be happy to provide a pull request if there's interest.

Hey Patrick! PRs are always welcome :D Let me know if you have any
questions regarding code! Cheers!
On Mon, Mar 9, 2015 at 7:33 PM, Patrick Williams<EMAIL_ADDRESS>wrote:

would be nice to be able to toggle this using an environment var. I'd be
happy to provide a pull request if there's interest.
—
Reply to this email directly or view it on GitHub
https://github.com/co2-git/express-redis-cache/issues/30.

Couldn't something like this already be accomplished through the conditional caching feature?
app.get('/user',

  // middleware to decide if using cache
  // THIS IS NOT TESTED
  function (req, res, next) {
    // Use only cache if user not signed in
    if (process.env.NODE_ENV !== 'Production') {
        res.use_express_redis_cache = false;
    }

    next();
    }.

  cache.route(), // this will be skipped if user is signed in

  function (req, res) {
    res.render('user');
    }
  );

Going further you could define an array with the enviornment check function and cache.route() and simply call that array inside of your route to clean things up.
I am mainly writing this out for anyone else looking to a solution and I think it would be worth while to add an additional option to include the environment variable to switch the caching on or off.

See examples/example.js in v0.2.0 release. Hopefully that will work for your needs.


standard chat model tests

vertex async streaming is broken
probably good to add cases for gemini and palm separately

closing this for now, enabled on vertexai, and I'll need to take a look what's failing on genai in a separate PR


The readability in this website is no so good because of the similar text color and the background color.

Hey,i would love to contribute on this issue.Plzz assign me, i think i can fix it for you.

@inbuilt-aura it is fixed

@kantakshay,then plzz close the issue and are there any other issues?

@kantakshay @inbuilt-aura issue 98 already assigned

@kantakshay any issue is open which i could contribute?

@inbuilt-aura  @malik-vishu I have fixed the issue and raised a PR #107

@inbuilt-aura find the issue dude!

@kantakshay could you please remove your PR since it was already assigned.


LZFSE doesn't work on big endian

I'm setting up CI for Squash on POWER8, and LZFSE is one of the codecs which fails.  To make sure the issue isn't with Squash, I tried a simple test of just LZFSE:
[fedora@squash-be lzfse]$ ./build/bin/lzfse -encode < README.md | ./build/bin/lzfse -decode
malloc: Cannot allocate memory
[fedora@squash-be lzfse]$ uname -a
Linux squash-be.novalocal 4.5.7-202.fc23.ppc64 #1 SMP Thu Jun 30 10:45:03 UTC 2016 ppc64 ppc64 ppc64 GNU/Linux

There are lots of other errors for LZFSE in the Squash test suite (which is pretty evil) on ppc64be (sample log), so it could be helpful for testing.
If it would help, I can provide access to a VM for testing.  Just e-mail me, or drop by #squash on freenode, and we can figure something out.

I started playing with this, see https://github.com/nemequ/lzfse/tree/endian.  I think I have the encoder done (I haven't tested many files, but the ones I have tested provide the same output on LE and BE).  Decoder still crashes.
Not sure when I'll have time to finish this up, so if anyone else wants to pick it up feel free.

Any fix for this?

The tree still does not have the endian functions here, so probably not in here yet. I will see if I can do a forward port while adding a test case from a LE amd64-gcc/clang machine, since another pet peeve of mine is about loss of packing information in msvc v2 header.


Remove Yii autoloader

When original Yii 2.0 autoloader was implemented there was no PSR-4 so it was a requirement to support aliases for extensions to load their classes. Also we wanted to have something like Yii 1.1 Yii::import() which proved to be quite useless when using autoloading.

Q
A

Is bugfix?
no

New feature?
no

Breaks BC?
yes

Tests pass?
?

Fixed issues
-

huh? I'd still want to have those features...

What for?

@app will not work without it
I do not want @tests to be loadable in production, i.e. in a non-test app
changing something requires composer autoloader to be rebuilt, which is a source of possible errors

@app will not work without it

Alias itself will work just fine. Namespace would require declaration in composer.json but that's acceptable since it's 2.1.

I do not want @tests to be loadable in production, i.e. in a non-test app

Use --no-dev when deploying to production.

changing something requires composer autoloader to be rebuilt, which is a source of possible errors

Only if you change namespace roots. Not often the case. Also autoloader is re-built on any composer operation.

I do not want @tests to be loadable in production, i.e. in a non-test app

Tests should be in autoload-dev section of composer.json: https://getcomposer.org/doc/04-schema.md#autoload-dev
There is also exclude-from-classmap option: https://getcomposer.org/doc/04-schema.md#exclude-files-from-classmaps

@rob thanks for the hint. Adjusted.

tutorial-yii-integration.md still have instruction how to use (removed) Yii autoloader.

@sergeymakinen updated.

pretty sure this breaks migrations: https://github.com/yiisoft/yii2/blob/5522d1909cf157395b49086145abed3ba9c96b88/framework/console/controllers/BaseMigrateController.php#L696

We could use PSR-4 namespaces configuration from composer settings.
https://github.com/yiisoft/yii2/issues/14850#issuecomment-330792359


escape filename when assemble URL

Fixes: #22843
Cause:
https://github.com/go-gitea/gitea/blob/affdd40296960a08a4223330ccbd1fb88c96ea1a/services/repository/files/content.go#L161
Previously,  we did not escape the "%" that might be in "treePath" when call "url.parse()".

This function will check whether "%" is the beginning of an escape character. Obviously, the "%" in the example (hello%mother.txt) is not that. So, the function will return a error.
Solution:
We can escape "treePath" by call "url.PathEscape()" function firstly.
Screenshot:

CI failure is related.

🤦  I can't believe that I missed these when I went through the codebase looking for this kind of failure of escaping.
This needs to be backported and we should go back through the code, yet again, and ensure that there aren't more of these.

🤦 I can't believe that I missed these when I went through the codebase looking for this kind of failure of escaping.
This needs to be backported and we should go back through the code, yet again, and ensure that there aren't more of these.

Do you want me to help you do it together?

modules/lfs/endpoint.go:
func endpointFromLocalPath(path string) *url.URL {
	var slash string
	if abs, err := filepath.Abs(path); err == nil {
		if !strings.HasPrefix(abs, "/") {
			slash = "/"
		}
		path = abs
	}

	var gitpath string
	if filepath.Base(path) == ".git" {
		gitpath = path
		path = filepath.Dir(path)
	} else {
		gitpath = filepath.Join(path, ".git")
	}

	if _, err := os.Stat(gitpath); err == nil {
		path = gitpath
	} else if _, err := os.Stat(path); err != nil {
		return nil
	}

	path = fmt.Sprintf("file://%s%s", slash, filepath.ToSlash(path))

	u, _ := url.Parse(path)

	return u
}

	path = fmt.Sprintf("file://%s%s", slash, filepath.ToSlash(path))
```

Needs to become:

```go
	path = fmt.Sprintf("file://%s%s", slash, util.PathEscapeSegments(filepath.ToSlash(path)))
```

If you can find any others that would be helpful.


Fix AZP macOS dependency install failure

The build failures this fixes appear to be caused by another AZP macOS agent update, related to both CMake and Python. This PR removes our custom install of CMake (since AZP has a compatible version installed already now), and refines the pyenv build dependencies. Both of these were contributing to the dependency install task failing for macOS.
Signed-off-by: michdolan<EMAIL_ADDRESS>

@michdolan That's the second time the macOS virtual machine configuration changed causing us trouble with the builds. None of them were blocking us but one-day it could be a blocker. Are you aware of any way to have some 'notifications' of coming 'virtual machine and/or configuration' changes?

They do have an RSS feed:
https://status.dev.azure.com/_rss
I'll reach out to LFRE to see if they have any visibility into coming updates.


Is content:url() supported?

Just noticed a small issue that I believe is a bug.
The following CSS:
css={{
  ':after': {
    content: '" " url(images/some-image.png)'
  }
}}

Is incorrectly converted by Glamor (2.20.29) to:
.css-foo:after {
  content: "url(images/some-image.png)";
}

When it should be:
.css-foo:after {
  content: " " url(images/some-image.png)`;
}

Removing the " " prefix yields the same unexpected result:
The following CSS:
css={{
  ':after': {
    content: 'url(images/some-image.png)'
  }
}}

Becomes:
.css-foo:after {
  content: "url(images/some-image.png)";
}

Instead of:
.css-foo:after {
  content: url(images/some-image.png)`;
}

fixed in 2.20.30

please reopen if this isn't fixed :)

Ridiculously fast 😅  It looks like the correct CSS is being generated now!


The calendar date is not correct

Bug description / Feature request:
I just found the calendar Date is not correct. In your calendar, 2017-07-31 is Tuesday. In fact, it is Monday. Could you give me any hint to fix this problem
Link to minimally-working plunker that reproduces the issue (starter template: http://plnkr.co/edit/LE4F4U7AnnD3tjM9ZH4G?p=preview)
Versions
Angular: 1.6.6
Calendar library: 0.29.3
Browser name and version: 0.29.3

It looks ok to me. Did you notice the first column is Sunday, not Monday? If the bug only appears on your computer, could you provide screenshot?

Thanks for your prompt reply. I attached the screen shot below. You can see 2017-07-31 is Tuesday, which is not correct. And on my computer, the first column is Monday.

Well, on the screenshot it's even Wednesday, not Tuesday. Which is still odd. Does the example you linked in first post also produce this bug?

The plunker is not my code. I use your calendar in my asp.net project. I console.log viewDate, it is correct. I have no idea which part control this.

I guess we'll have to wait and see if @mattlewis92 has any idea, 'cause I give up here...


E5113: Error while calling lua chunk: /home/chris/.config/nvim/init.lua:7: attem pt to index field 'uv' (a nil value)

Hello,
I was following the installation instructions on the project's website, and I ran the simple command git clone https://github.com/NvChad/starter ~/.config/nvim && nvim
Instead of the installation continuing, I get this error message: Error detected while processing /home/chris/.config/nvim/init.lua: E5113: Error while calling lua chunk: /home/chris/.config/nvim/init.lua:7: attem pt to index field 'uv' (a nil value) stack traceback:         /home/chris/.config/nvim/init.lua:7: in main chunk Press ENTER or type command to continue
I use Debian unstable (sid) and the version of neovim is 0.9.5. I also have a lua interpreter installed.
The problem seems to be in the init.lua file here: https://github.com/NvChad/starter/tree/main/init.lua
How do you think we can fix it?
Thanks!

v0.10 is needed

Thank you for the information! I am sorry for opening a meaningless issue.


feat: Added Source Link support.

feat: Added Source Link support.
close #7

Base branch changed and dependencies reordered ;-)


feat: add support for PostgreSQL application_name in DSN

Description
PostgreSQL has application_name support and its implemented.
Checklist:

[ ] Securely signed commits
[ ] Component(s) with PHPDoc blocks, only if necessary or adds value
[ ] Unit testing, with >80% coverage
[ ] User guide updated
[ ] Conforms to style guide

You can configure it as:
    public array $default = [
        'DSN'=> "host=localhost port=5432 user=postgres password='postgres' dbname=test options='--application_name=CI4'",
        // ...
    ];

So this is an enhancement. So you should send this PR to 4.6 branch.
See https://github.com/codeigniter4/CodeIgniter4/blob/develop/contributing/workflow.md#if-you-sent-to-the-wrong-branch

We expect all code changes or bug-fixes to be accompanied by one or more tests added to our test suite to prove the code works.
See https://github.com/codeigniter4/CodeIgniter4/blob/develop/contributing/pull_request.md#unit-testing

[!IMPORTANT]
We expect all code changes or bug-fixes to be accompanied by one or more tests
added to our test suite to prove the code works.

This PR does not have the necessary test code. If you want this PR to be reviewed, please add the test code.
See https://github.com/codeigniter4/CodeIgniter4/blob/develop/contributing/pull_request.md#unit-testing
If the test is not added, this PR will be closed.


Comments in schema file cause JSON error

Upgraded to Beta.1, and my comments in schema file seem to be causing a JSON error.
Unexpected token
in JSON at position 337
This happens only if there is a comment with NO text that follows in that one line.
Smallest test case to reproduce:

Create schema.prisma:
generator client {
  provider = "prisma-client-js"
}

// Models
//
model Default {
  id String @default(cuid()) @id
}

create a file testbug.ts:
import { PrismaClient } from '@prisma/client'
new PrismaClient()

Run:
npx prisma generate; npx ts-node src/types/testbug.ts
Unexpected token
 in JSON at position 337

Change schema.prisma as follows - remove empty comment
generator client {
  provider = "prisma-client-js"
}

// Models
model Default {
  id String @default(cuid()) @id
}

npx prisma generate; npx ts-node src/types/testbug.ts
=> No Errors

One more reproducable example:
// Models

// Website

model Website {
id    String      @default(cuid()) @id
}

Outputs:
Failed to import prisma client package at @prisma/client. The following error occured while trying:
SyntaxError: Unexpected token
in JSON at position 1049
at JSON.parse ()
at Object. (/...User/node_modules/@prisma/client/index.js:711:19)
at Module._compile (internal/modules/cjs/loader.js:1147:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1167:10)
at Module.load (internal/modules/cjs/loader.js:996:32)
at Function.Module._load (internal/modules/cjs/loader.js:896:14)
at Module.require (internal/modules/cjs/loader.js:1036:19)
at require (internal/modules/cjs/helpers.js:72:18)
at Object.exports.getPhotonDmmf (.../User/node_modules/nexus-prisma/src/dmmf/utils.ts:8:12)
at Object.exports.getTransformedDmmf (.../User/node_modules/nexus-prisma/src/dmmf/transformer.ts:19:30)
But this works!
// Models

model Website {
  id    String      @default(cuid()) @id
}

Something going on with parsing of comments in schema file..

I am now getting this error pretty much every time i introduce any // Comment as a separate line, in the schema file.

I am unable to reproduce both of the cases.

Version used:
@prisma/cli          : 2.0.0-beta.1
Current platform     : darwin
Query Engine         : prisma 2accb9c7eacdc984874eaeb63377fe705dfd3203 (at /Users/harshit/.nvm/versions/node/v12.15.0/lib/node_modules/@prisma/cli/query-engine-darwin)
Migration Engine     : migration-engine-cli 2accb9c7eacdc984874eaeb63377fe705dfd3203 (at /Users/harshit/.nvm/versions/node/v12.15.0/lib/node_modules/@prisma/cli/migration-engine-darwin)
Introspection Engine : introspection-core 2accb9c7eacdc984874eaeb63377fe705dfd3203 (at /Users/harshit/.nvm/versions/node/v12.15.0/lib/node_modules/@prisma/cli/introspection-engine-darwin)

I think might be OS-specific. Can you please tell me which operating system are you using?

Darwin / Mac.
On Tue, Apr 7, 2020 at 10:17 PM Harshit Pant<EMAIL_ADDRESS>wrote:

I am unable to reproduce both of the cases.
[image: image]
https://user-images.githubusercontent.com/22195362/78747161-56610980-7986-11ea-8d57-075036385faf.png
Version used:
@prisma/cli          : 2.0.0-beta.1
Current platform     : darwin
Query Engine         : prisma 2accb9c7eacdc984874eaeb63377fe705dfd3203 (at /Users/harshit/.nvm/versions/node/v12.15.0/lib/node_modules/@prisma/cli/query-engine-darwin)
Migration Engine     : migration-engine-cli 2accb9c7eacdc984874eaeb63377fe705dfd3203 (at /Users/harshit/.nvm/versions/node/v12.15.0/lib/node_modules/@prisma/cli/migration-engine-darwin)
Introspection Engine : introspection-core 2accb9c7eacdc984874eaeb63377fe705dfd3203 (at /Users/harshit/.nvm/versions/node/v12.15.0/lib/node_modules/@prisma/cli/introspection-engine-darwin)
I think might be OS-specific. Can you please tell me which operating
system are you using?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/prisma/prisma/issues/2084#issuecomment-610756285, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ABEUWHCB5XCXY22XQXOBMSLRLQCH7ANCNFSM4L4HWBJQ
.

Hi again @srisub1,
Can you please try this with the latest version of the client(which is 2.0.0-beta.2 right now)?
If you are still able to reproduce this, please send me the code to reproduce this problem in a git repository. Without a working reproduction, we won't be able to resolve this.

I am going to close this due to inactivity now. If you can still reproduce this, please comment here and we can another look.