text:
Add Info to FAQ Section

What date should I RSVP by?
Am I allowed to bring my children?
Did Han shoot first?
Will there be an open bar?
Will there be any transportation provided?
Do the bride and groom have a preferred hotel/room block?
What type of food will be served at your wedding?
Are the bride and groom nerds?
Are animals permitted at this wedding?
Will your wedding be indoors or outdoors?
What is the theme/wedding colors?
What is the dress code for your wedding?
Can I bring a date?
I thought Zach loved dark mode?
Am I allowed to take photos at your wedding?
Are there preferred accommodations for guests?

plz pay me more

https://www.theknot.com/content/wedding-website-faq-page

What date should I RSVP by?

Please RSVP by September 26th, 2024. This ensures that our vendors will have enough time to accommodate the number of guests we have.

Am I allowed to bring my children?

We love your children, but due to space restrictions, we cannot accommodate guests under the age of 18 on our wedding day. The only children present will be those in the wedding party. Thank you for your understanding.

Did Han shoot first?

In the original version of the scene, Han shoots Greedo first. Later versions are edited so that Greedo attempts to fire at Han first. Director George Lucas altered the scene to give Solo more justification for acting in self-defense.

Will there be an open bar?

Yes! However, our venue only allows beer and wine. We will also have an assortment of beverages for those who do not wish to partake.

Will there be any transportation provided?

No transportation will be provided. There is ample parking on the preemies and you will be directed to the designated parking lot by an attendant when you arrive.  If planning on drinking, please secure a designated driver or use rideshare services to ensure everyone gets home safely.

Do the bride and groom have a preferred hotel/room block?

Yes! The bridal party and their family will be staying at the Crowne Plaza Resort in Chandler (One N San Marcos Pl, Chandler, AZ 85225). Please reach out to the hotel directly to make a booking, should you wish to stay at the same hotel. Please note that we will be hosting a casual farewell breakfast at this hotel the morning after the wedding on October 27th to give everyone a chance to say goodbye.

What type of food will be served at your wedding?

We are planning on serving Italian food with a variety of desserts and appetizers. We will do our best to accommodate everyone's dietary restrictions, but due to financial constrains, it may not be feasible.

Are the bride and groom nerds?

Absolutely. Keep your eyes peeled for Easter eggs throughout the wedding.

Are animals permitted at this wedding?

Unfortunately, the only animals permitted at our wedding will be party animals.

Will your wedding be indoors or outdoors?

Our wedding will be both indoors and outdoors. As famously said by Kelso, "well damn Jackie, I can't control the weather!" so please plan accordingly and dress for success. The ceremony will be held outside, and the reception will be indoors. For those visiting from out of state, please check Mesa, Arizona weather as October can be unpredictable.

What is the theme/wedding colors?

Our theme is loosely whimsical, fantasy, garden party vibes. Our wedding colors are a mix of greens, blues, and violets. Please wear the colors that you are comfortable in, but be aware that our bridesmaids will be dressed in dark green, groomsmen in dark grey, and the groom will be in dark navy blue. Oh, and the bride's wearing white. 😉

What is the dress code for your wedding?

Our dress code is formal/cocktail attire. Please check out this cheat sheet if you need further explanation.

Can I bring a date?

Please check your invitation or the RSVP system in the website to see how many people were invited within your party. Unfortunately, due to financial limitations, not everyone may have been allotted a plus one.

I thought Zach loved dark mode?

We are a dark mode family, but we thought light mode looked best for the website. See, we can prove it -->

What time should I arrive?

The ceremony begins at 4, so please plan accordingly to arrive on time. We recommend at least 15 minutes early so you can sign our guest book and find a good seat.

What time will the reception end?

The reception ends at 10. We're all too old to be staying out any later.

Enjoy your stay in Phoenix! Some of our favorite things to do are seeing a movie at Harkins Camelview, playing a round of mini golf at Imagine 3D Mini Golf, or petting the stingrays at the Phoenix Zoo.
If you're hungry, we'd recommend DC Steakhouse, Rustler's Roost, YC's Mongolian Grill, Nando's Mexican Food, or Venezia's Pizza (recognizable from the famous pizza-on-the-roof scene from Breaking Bad). For you folks on the East Coast, make sure to try In-n-Out! Life changing!
To finish with something sweet, head over to Jeremiah's Italian Ice, Toasted Mallow, or Bruster's Real Ice Cream. For those of you inclined to try some cactus ice cream, head over to Topo Arizona in Gilbert. It's inside the giant beaver with glowing red eyes. You can't miss it.

authors: surfinsonie zachspiel

repo: zachspiel/wedding-rsvp


text:
Fix up Janitors to ensure they broadcast to all hooks

This fixes #17. Basically the Janitors were only reporting to the Stats hook (for whatever reason). This simply tweaks them to broadcast to all attached hooks via the worker.
I have also included a small :broadcast hook into the worker module to make it easier to jump messages straight to hooks. This adds an extra message to the worker but it should be extremely fast (bar any sync hooks).

Coverage remained the same at 100.0% when pulling 384923fcc990e4a44988ae500a8f43cd5387a611 on issue-17 into 6f41471a6acacac1de36b6c6ad7370646035ae41 on master.

Coverage remained the same at 100.0% when pulling 384923fcc990e4a44988ae500a8f43cd5387a611 on issue-17 into 6f41471a6acacac1de36b6c6ad7370646035ae41 on master.

source: gharchive/pull-request

authors: coveralls zackehh

repo: zackehh/cachex

license: mit

license_type: permissive

license_source: bigquery


text:
implement ingress support

very hacky but functional

/ping @ideahitme

we should split it into two Producers - one for services, one for ingress both implementing the Producer interface - and then implement the Kubernetes producer by calling them and also implementing the Producer interface.

extracted one producer for both services and ingress. then created another producer that aggregates both. LMKWYT @ideahitme

@linki reviewing :)

@linki idea of having pluggable ingress/service producer is nice. Since for now are not really sure if we are going to support ingress DNS record generation, having current implementation is okay. But going further, we could have improved the structure by allowing each producer independent of another (better structure, better error handling through goroutines, CLI flags etc. )

@ideahitme i totally agree.
also, after thinking about it more, i agree with your proposal of being able to configure multiple producers and consumers. it will be backwards compatible (assuming we provide multiple producers with repeated --producer flags), we can still have both individual service/ingress consumers as well as a combined one, and it will be nice programming exercise dealing with more and diverse things running concurrently.

👍

authors: ideahitme linki

repo: zalando-incubator/mate

license: MIT

license_source: github-api


text:
use kafka binary version 3.1.1

Part of Internal ticket : 1104
Description
Update kafka binary version to 3.1.1

:+1:

Btw, looks like we add the same file two times: https://github.com/zalando-nakadi/bubuku/pull/197/files#diff-dd2c0eb6ea5cfc6c4bd4eac30934e2d5746747af48fef6da689e85b752f39557R18-R19

repo: zalando-nakadi/bubuku


text:
Add readthedocs config with docs requirements

Fixes #1390
https://docs.readthedocs.io/en/stable/faq.html#my-documentation-requires-additional-dependencies

Coverage remained the same at 97.076% when pulling 6cd56ed748ae169f233910d7b5d522dc8c94257d on bugfix/docs-requirements into e3dd3c9273c33565a4d7261c7e244297605c35e3 on main.

I think you need to also install the connexion package as I ticked the "Install Project" box (which is then overwritten when having a config file):

Good catch, thanks! Updated to install the package with docs extra. I also activated docs building on PRs to test the changes.

:+1:

authors: RobbeSneyders coveralls hjacobs

repo: zalando/connexion


text:
FPGA write HPS SDRAM

Hi zangman:
This is an awesome project and wiki! I appreciate your detailed instruction. I wonder whether there is a reversing version of using SDRAM like FPGA directly write the data to SDRAM on HPS side? Thank you very much!

@HCIMaker Thanks for your kind words :)
I don't have a section on writing to the SDRAM, but I think it should be doable. You will need to follow a state machine approach as explained here.
I highly recommend going through the content on this page first and watching this video.
Hope that helps and good luck!

@HCIMaker Thanks for your kind words :)
I don't have a section on writing to the SDRAM, but I think it should be doable. You will need to follow a state machine approach as explained here.
I highly recommend going through the content on this page first and watching this video.
Hope that helps and good luck!

Thank you zangman! I will try it out!

Hello,
I am currently trying that, it seems the FPGA manages to write to the SDRAM. I slightly extended the example SystemVerilog component for QSYS. I am able to watch how the memory changes every second from HPS using memtool, but for some reason the address is still incrementing (by data width, 0x20 = 32B) even it should remain at the start address 0x2000_0000.
The SystemVerilog file looks like this:
module sdram_if # (
  parameter ADDR_SIZE = 32,
  parameter DATA_SIZE = 256 )
  ( clk, reset,
    avm_m0_read, avm_m0_write, avm_m0_writedata, avm_m0_address, avm_m0_readdata, avm_m0_readdatavalid, avm_m0_byteenable, avm_m0_waitrequest, avm_m0_burstcount,
	 address, byteenable, read, data_out, write, data_in, busy );

// clk and reset are always required.
input   logic         clk;
input   logic         reset;
// Avalon Master ports
output  logic         				avm_m0_read;
output  logic         				avm_m0_write;
output  logic [DATA_SIZE-1:0] 	avm_m0_writedata;
output  logic [ADDR_SIZE-1:0]  	avm_m0_address;
input   logic [DATA_SIZE-1:0] 	avm_m0_readdata;
input   logic         				avm_m0_readdatavalid;
output  logic [(DATA_SIZE/8)-1:0]avm_m0_byteenable;
input   logic         				avm_m0_waitrequest;
output  logic [10:0]  				avm_m0_burstcount;
// External conduit
input   logic [ADDR_SIZE-1:0]  		address;
input   logic [(DATA_SIZE/8)-1:0] 	byteenable;
input   logic         					read;
output  logic [DATA_SIZE-1:0] 		data_out;
input   logic         					write;
input   logic [DATA_SIZE-1:0] 		data_in;
output  logic         					busy;

localparam INIT = 3'd0;
localparam READ_START = 3'd1;
localparam READ_END = 3'd2;
localparam WRITE_START = 3'd3;
localparam WRITE_END = 3'd4;

logic [2:0] cur_state;
logic [2:0] next_state;

logic [ADDR_SIZE-1:0] addr;
logic [DATA_SIZE-1:0] data;
logic [(DATA_SIZE/8)-1:0] enable;

// Handling change of the current state to the next requested state
always_ff @(posedge clk) begin
  if (reset) begin
		cur_state <= INIT;
  end else begin
		cur_state <= next_state;

      if (read) begin
			addr <= address;
			enable <= byteenable;
		end else begin
			if (write) begin
				addr <= address;
				enable <= byteenable;
				data <= data_in;
			end
		end
  end
end

// Handling FSM transitions
always_comb begin
  next_state = cur_state;
  busy <= '0;
  case(cur_state)
    INIT: begin
      if (read) begin
			next_state = READ_START;
		end else begin
			if (write) begin
				next_state = WRITE_START;
			end
		end
    end

    READ_START: begin
	   busy <= '1;
      if (avm_m0_waitrequest) next_state = READ_START; // Wait here.
      else next_state = READ_END;
    end

    READ_END: begin
	   busy <= '1;
      if (!avm_m0_readdatavalid) next_state = READ_END; // Wait here.
      else next_state = INIT;
    end

    WRITE_START: begin
	   busy <= '1;
      if (avm_m0_waitrequest) next_state = WRITE_START; // Wait here.
      else next_state = WRITE_END;
    end

    WRITE_END: begin
	   busy <= '1;
      next_state = INIT;
    end

    default: begin
      next_state = INIT;
    end
  endcase
end

// Handling read and write start of each transaction
always_comb begin
  avm_m0_address = '0;
  avm_m0_read = '0;
  avm_m0_write = '0;
  avm_m0_byteenable = '0;
  avm_m0_burstcount = '0;
  avm_m0_writedata = '0;

  case(cur_state)

    READ_START: begin
      avm_m0_address <= addr;
      avm_m0_read = '1;
      avm_m0_byteenable <= enable;
      avm_m0_burstcount = '1;
    end

    WRITE_START: begin
      avm_m0_address <= addr;
      avm_m0_write = '1;
      avm_m0_writedata <= data;
      avm_m0_byteenable <= enable;
      avm_m0_burstcount = '1;
    end

    default: begin
    end
  endcase
end

// Handling read and write end of each transaction
always_ff @(posedge clk) begin
  if (reset) begin
	   data_out <= '0;
  end else begin
    case (cur_state)

      READ_END: begin
        if (avm_m0_readdatavalid) begin
          data_out <= avm_m0_readdata;
        end
      end

      default: begin
      end
    endcase
  end
end

endmodule

And my VHDL entity for testing looks like this:
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
USE ieee.numeric_std.ALL;

ENTITY test_sdram IS
    PORT (
        clock : IN STD_LOGIC := '1';
        nrst : IN STD_LOGIC := '1';
        h2f_nrst : IN STD_LOGIC := '1';
        sdram_address : OUT STD_LOGIC_VECTOR(31 DOWNTO 0) := (OTHERS => '0');
        sdram_byteenable : OUT STD_LOGIC_VECTOR(31 DOWNTO 0) := (OTHERS => '0');
        sdram_read : OUT STD_LOGIC := '0';
        sdram_data_read : IN STD_LOGIC_VECTOR(255 DOWNTO 0);
        sdram_write : OUT STD_LOGIC := '0';
        sdram_data_write : OUT STD_LOGIC_VECTOR(255 DOWNTO 0) := (OTHERS => '0');
        sdram_busy : IN STD_LOGIC;
        led : OUT STD_LOGIC_VECTOR(7 DOWNTO 0)
    );
END ENTITY;

ARCHITECTURE arch OF test_sdram IS
    SIGNAL i_led : STD_LOGIC_VECTOR(7 DOWNTO 0) := (OTHERS => '0');
BEGIN
    count : PROCESS (nrst, clock) IS
        VARIABLE counter : INTEGER := 0;
        VARIABLE ticks : INTEGER := 0;

        CONSTANT START_ADDR : STD_LOGIC_VECTOR(31 DOWNTO 0) := STD_LOGIC_VECTOR(to_unsigned(16#2000_0000#, 32));
        CONSTANT BYTE_ENABLE : STD_LOGIC_VECTOR(31 DOWNTO 0) := (OTHERS => '1');
    BEGIN
        IF nrst = '0' OR h2f_nrst = '0' THEN
            sdram_data_write <= (OTHERS => '0');
            sdram_address <= (OTHERS => '0');
            sdram_byteenable <= (OTHERS => '0');
            sdram_read <= '0';
            sdram_write <= '0';
            i_led <= (OTHERS => '0');
            counter := 0;
            ticks := 0;
        ELSE
            IF rising_edge(clock) THEN
                IF counter = 50_000_000 THEN
                    counter := 0;
                    ticks := ticks + 1;
                    sdram_address <= START_ADDR;
                    sdram_data_write(31 DOWNTO 0) <= STD_LOGIC_VECTOR(to_unsigned(ticks, 32));
                    sdram_byteenable <= BYTE_ENABLE;
                    sdram_write <= '1';
                    i_led(1) <= NOT i_led(1);
                ELSE
                    counter := counter + 1;
                    sdram_read <= '0';
                    sdram_write <= '0';
                END IF;
            END IF;
        END IF;
    END PROCESS;

    led <= i_led;
END ARCHITECTURE;

In the attached image I highlighted the address when I released the reset button - the counter restarts but the address keeps incrementing. Also, before the first write to the start address occur, it takes about a minute (the first value is 0x7e, meaning 126 seconds since the RBF was loaded), I am also not sure why.

Can you please help me elaborate on this? Thanks!

So I have already figured it out - without custom QSYS component. I use External Bus to Avalon Bridge with Address Span Extender (otherwise the External Bus' max address range 0x0000_0000 - 0x3fff_ffff (1GB) can't match the f2h_sdram0_data range 0x0000_0000 - 0xffff_ffff). Nice thing is the Address Span Extender also supports address offset of 0x2000_0000 so the data can be addressed from FPGA starting at 0).
If anyone is curious how it is configured in QSYS (I disabled irrelevant components):

The External Bus is limited to 128-bit data width but it is not a problem for my application. Also I use SW generated reset signal from HPS PIO output (the bit is set using memtool in a systemd service after boot) because it seems FPGA must not write to the SDRAM before Linux boots up.

@vrbadev Cool.  I understand very little of that code, but I aspire to being able to do similar things, one day.
What would the code for the HPS side look like, e.g. in C or C++?  I take it you have to declare an array, or allocate some memory.  Do you get to say where that is, in the address space, or do you allocate it then pass the base address to the FPGA?

The HPS doesn't have to allocate anything. In fact the HPS must avoid conflict when accessing the part of the SDRAM accessed by the fabric, so the parameter mem=512M in extlinux.conf must be defined so the OS doesn't use the consecutive part of the RAM (0x2000_0000) at all as it would for its processes etc.
So the code at the HPS side is mainly mmap of the FPGA accessed memory space, if you write to it from HPS then the fabric must ensure there will be no conflicts.

@vrbadev Thanks.  Yes, I can see that would be a problem.  I was picturing a circular buffer that's written by one side (FPGA or HPS) and read by the other, with also a pointer or index being written, to say where it's got up to.  If it's not safe for one side to read a location while the other side is writing to it, then it gets more complicated - even to read the pointer that's set by the other side.
The sort of application I had in mind involves an ADC or two and one or more DACs.  Since FPGAs can have cycle perfect timing, which ARM cores aren't so good at, it seems best to do that part on the FPGA, but have circular buffers to exchange data with the HPS, which might do some processing of it before passing it back.
I guess it doesn't matter much which side the RAM buffers belong to, provided both sides can have the access they need to them, but I was thinking of a continuous process, not, for example, the FPGA reading some data into a buffer, setting a flag, then waiting for the HPS to act on it.
Maybe there could be some dual ported RAM blocks used on the FPGA, handling data in real time, and a separate mechanism to transfer from there to the HPS, in blocks, using hand shaking.

@Andy2No Well, depending on your requirements, you may prefer STM32G4 MCUs over FPGAs - these MCUs have rich analog peripherals (multiple ADCs and DACs) which can be served using internal DMA, so the timing can be handled completely just by the built-in hardware. Also you will have no further trouble with compiling the OS and with the bootloader, your solution could be completely bare-metal. The price is also much lower and Nucleo boards are a good starting point for development, with hundreds of examples available online.
Cyclone V is pretty complicated for beginners and may be an overkill for your application. I need it mainly for real-time processing of a video stream from a CMOS chip which would be impossible without the FPGA part.
Of course there is a dual-port BRAM inside the fabric available so you are right about the idea of the memory transfer mechanism.

@vrbadev My main aim was to learn more about programming FPGAs, and make something worthwhile but, yes, if I learned more about DMA on STM32s, I could just do it all on one of those.  Fair point.  Perhaps I should try to think of a project that's less suitable for doing on a microcontroller.   Really, the point was just to gain some experience with FPGAs though.
Doing it all on the FPGA plus the 512MB or SDRAM that it can see, with no involvement of the Arm CPU, would also be acceptable, and might be a better placer to start.

I am currently attempting a similar task. When I press the KEY button on the DE10-nano board, a write command will be sent to the SDRAM controller. The entire Avalon Master structure is very simple, as shown in the diagram below:

The strange thing is that when I send a write command, the SDRAM controller immediately raises the waitrequest signal to a high level. According to the Avalon protocol, the Master must keep the data unchanged, so the Master will endlessly wait since the waitrequest signal from the SDRAM controller will never return to a low level. When I ignore the waitrequest signal and change the write address and data according to the Master's clock cycle, I found that the SDRAM controller is actually writing data normally. The write cycle is 6 Master clock cycles. This has left me very puzzled. Has anyone encountered the same situation? Any insights would be greatly appreciated!

source: gharchive/issue


text:
Issue 130

Description
Part of the code from the get_read_orientation.py module was transferred into a new module mapping.py which takes care of the STAR mapping process. The instance of the Mapping class is created in the HtsInfer class and supplemented as an argument to the get_lib_type and get_orientation modules, so as to avoid a repeated mapping if the sequence IDs are not the same and the mates are actually not mates.
Fixes #130
Type of change
Please delete options that are not relevant.

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

Checklist
Please carefully read these items and tick them off if the statements are true
or do not apply.

[x] I have performed a self-review of my own code
[x] My code follows the existing coding style, lints and generates no new
warnings
[x] I have added type annotations to all function/method signatures, and I
have added type annotations for any local variables that are non-trivial,
potentially ambiguous or might otherwise benefit from explicit typing.
[x] I have commented my code in hard-to-understand areas
[x] I have added ["Google-style docstrings"] to all new modules, classes,
methods/functions or updated previously existing ones
[x] I have added tests that prove my fix is effective or that my feature
works
[x] New and existing unit tests pass locally with my changes and I have not
reduced the code coverage relative to the previous state
[x] I have updated any sections of the app's documentation that are affected
by the proposed changes

One Issue which I was not able to replicate is the unit test failures in the CI workflow, I will not be able to work on this currently, so I leave it as is for now.

@BorisYourich: I've been away for a while. Should I look at this again or was there nothing added/changed since the last review?

Hey, sorry for such a late response @uniqueg I was busy with other stuff, no update on this yet.

No problem. Thanks for the update on no update :)

I made the required changes plus something extra I found, but the unit tests still fail and I have no idea why, and it seems random, take a look at the replayed 3.7 unit test, many more tests failed compared to previous run. I cannot replicate in my local env, even if I downgrade python to 3.7, the tests still pass.

Hi @BorisYourich, I've fixed some of the errors by stabilizing the build in various ways (remote now installs the exact same package as local for me): https://github.com/zavolanlab/htsinfer/pull/131/files/0a232822922a006fd97ee9d6e94d44db733eca5d..b5bd469df2694f20ba46178425752b036cda2f94
Among other things, I have included Py3.10 in the supported versions, but dropped support for Py3.7 - support for which is phasing out anyway.
As you can see, there is still one issue remaining that affects two tests. These two tests also pass on my local machine (I suppose the same issue you faced), which -together with the error message- makes me think that it's a permission problem. Maybe a file is attempted to be written in a location that we do have write access on our local machine, but wouldn't have write access on the remote machine. Or a file is created in a temporary directory that is garbage collected on the remote between tests, but not locally.
From the error stack, I would have a look here first:
https://github.com/zavolanlab/htsinfer/blob/b5bd469df2694f20ba46178425752b036cda2f94/htsinfer/mapping.py#L79-L142
This method also had a line that created a file name based off an object (which I first thought was the problem). I have now given the transcripts subset file a hardcoded name (not sure if that could cause problems in some case?). And still this stringified library source object instance is used in the log message, so this isn't handled well. Seems to me that this function needs guarding against edge cases, e.g., when there is no library source determined/available).
As I think you know that particular code better from your changes, I would like to pass it back to you if possible. With some debug messages and maybe additional try-except blocks around the code reading and writing that subset transcripts file, I'm sure you will find out what the problem is on the remote.

Awesome, thanks a lot, @BorisYourich!
@balajtimate: Can you please test the feature branch to see if the proposed changes break anything on real world data? Maybe you can run it on a few samples and see if you get the same results as you did previously.
If all is good, I will merge.

Thanks! Merging this now, given that it doesn't break anything. We can still do in-depth testing later to see if it actually works as expected. Thanks a lot @BorisYourich

authors: BorisYourich uniqueg

repo: zavolanlab/htsinfer


text:
ZFSBootMenu does not boot except when built with 6.5.13 (Void Linux).

ZFSBootMenu build source
Local build, dracut
ZFSBootMenu version
2.3.0
Boot environment distribution
Void Linux
Problem description
I found out that for the kernels 6.1.83 (lts), 6.6.30 (lts), 6.8.9 (latest, on void) zfsbootmenu doesn't boot (stuck with a plain cursor).
The only version in my experimentation that worked was 6.5.13. When built like sudo generate-zbm --kver 6.5.13_1.
I'm on Framework Laptop 13, i5-1135g7. The dmesg logs at the chroot of zfsbootmenu and at the distro didn't seem very useful, no major errors or red-lines (in the working 6.5.13 kernel), although if its required I may try to extract it from there.
Thanks!
Steps to reproduce
My installation history is linked here in my notes (see: click to view), with all the zfs pool, dataset options and zfsbootmenu config.
The reboot after that doesn't load the zfsbootmenu, I had to generate the zbm manually using the above command in problem description in order to actually make it boot.

This is for sure a kernel issue that is (effectively) out of our hands. Unfortunately there's little to nothing we can do.

:thinking: interesting, looks like to me too, a reddit post shows a update pushed into 6.6 on fedora made is possible to boot, which was not booting previously.
I just posted here so that I could have a record, I'm going to see the differences in void kernel build options next...

It sounds like you're having the same problem I am: #626
For what it's worth, I am able to boot into a VM with the exact same install script that fails on my desktop. At what stage are you introducing enerate-zbm --kver 6.5.13_1? I am effectively following the official ZBM instructions to the letter. I'm also installing to NVMe which is the only notable difference to my VMs.
Also: that's a cool personal website!

At what stage are you introducing enerate-zbm --kver 6.5.13_1? I am effectively following the official ZBM instructions to the letter. I'm also installing to NVMe which is the only notable difference to my VMs.

Its the very last step, actually the 4th line from the last (in my installation logs). 😇

I just added a line to my own script to install the 6.5 headers and then kernel before exiting the chroot and I was able to successfully boot in. Thanks!

fixed by a revert in the upstrema kernel

authors: Animeshz classabbyamp zdykstra zenodotus280

repo: zbm-dev/zfsbootmenu


text:
Unable to compile Pumpkin / Ramp: rustc 1.26.0-nightly

The README specify pumpkin = "2.0.*" where https://crates.io/crates/pumpkin specify pumpkin = "1.0.*".
When using pumpkin = "1.0.*" (2.0.* is not available) with rustc 1.26.0-nightly (55c984ee5 2018-03-16) I am getting lot of compilation errors from ramp. For example:
error[E0658]: use of unstable library feature 'ptr_internals': use NonNull instead and consider PhantomData<T> (if you also use #[may_dangle]), Send, and/or Sync (see issue #0)
    --> /Users/Gary/.cargo/registry/src/github.com-1ecc6299db9ec823/ramp-0.2.5/src/int.rs:3416:27
     |
3416 |             ptr: unsafe { Unique::new(alloc::heap::EMPTY as *mut Limb) },
     |                           ^^^^^^^^^^^
     |
     = help: add #![feature(ptr_internals)] to the crate attributes to enable

How can we get pumpkin to compile?
Thanks,

Hmm... I'll take a look at this in a little bit.

This has been addressed in the latest release: https://github.com/zcdziura/pumpkin/releases/tag/v2.0.1

authors: gbenattar zcdziura

repo: zcdziura/pumpkin


text:
how to include CF convention as a reference in the metadata?

For example, http://cfconventions.org/Data/cf-conventions/cf-conventions-1.7/cf-conventions.html
or CF github page
https://github.com/cf-convention/cf-conventions/releases
has the information we need.
Ideally CF conventions should have a DOI number that we can cite in the metadata. Where do we insert that information in the ISO metadata?

Here's how we are handling this currently:
<gmd:MD_Georeferenceable>
	<gmd:numberOfDimensions>
		<gco:Integer>2</gco:Integer>
	</gmd:numberOfDimensions>
	<gmd:axisDimensionProperties>
		<gmd:MD_Dimension>
			<gmd:dimensionName>
				<gmd:MD_DimensionNameTypeCode codeList="http://www.ngdc.noaa.gov/metadata/published/xsd/schema/resources/Codelist/gmxCodelists.xml#MD_DimensionNameTypeCode"
										codeListValue="vertical">vertical</gmd:MD_DimensionNameTypeCode>
			</gmd:dimensionName>
			<gmd:dimensionSize>
				<gco:Integer>7</gco:Integer>
			</gmd:dimensionSize>
			<gmd:resolution>
				<gco:Measure uom="meter">0.01</gco:Measure>
			</gmd:resolution>
		</gmd:MD_Dimension>
	</gmd:axisDimensionProperties>
	<gmd:axisDimensionProperties>
		<gmd:MD_Dimension>
			<gmd:dimensionName>
				<gmd:MD_DimensionNameTypeCode codeList="http://www.ngdc.noaa.gov/metadata/published/xsd/schema/resources/Codelist/gmxCodelists.xml#MD_DimensionNameTypeCode"
										codeListValue="temporal">temporal</gmd:MD_DimensionNameTypeCode>
			</gmd:dimensionName>
			<gmd:dimensionSize>
				<gco:Integer>10272</gco:Integer>
			</gmd:dimensionSize>
			<gmd:resolution>
				<gco:Measure uom="minutes">30</gco:Measure>
			</gmd:resolution>
		</gmd:MD_Dimension>
	</gmd:axisDimensionProperties>
	<gmd:cellGeometry>
		<gmd:MD_CellGeometryCode codeList="http://www.ngdc.noaa.gov/metadata/published/xsd/schema/resources/Codelist/gmxCodelists.xml#MD_CellGeometryCode"
							 codeListValue="area">area</gmd:MD_CellGeometryCode>
	</gmd:cellGeometry>
	<gmd:transformationParameterAvailability>
		<gco:Boolean>true</gco:Boolean>
	</gmd:transformationParameterAvailability>
	<gmd:controlPointAvailability/>
	<gmd:orientationParameterAvailability/>
	<gmd:georeferencedParameters>
		<gco:Record xsi:type="gco:CharacterString_PropertyType">
			<gco:CharacterString>Vertical coordinates</gco:CharacterString>
		</gco:Record>
	</gmd:georeferencedParameters>
	<gmd:parameterCitation>
		<gmd:CI_Citation>
			<gmd:title>
				<gco:CharacterString>CF Conventions and Metadata</gco:CharacterString>
			</gmd:title>
			<gmd:date>
				<gmd:CI_Date>
					<gmd:date>
						<gco:Date>2017-08-01</gco:Date>
					</gmd:date>
					<gmd:dateType>
						<gmd:CI_DateTypeCode codeList="http://www.ngdc.noaa.gov/metadata/published/xsd/schema/resources/Codelist/gmxCodelists.xml#CI_DateTypeCode"
									 codeListValue="lastUpdate">lastUpdate</gmd:CI_DateTypeCode>
					</gmd:dateType>
				</gmd:CI_Date>
			</gmd:date>
				<gmd:citedResponsibleParty>
					<gmd:CI_ResponsibleParty>
						<gmd:organisationName>
							<gco:CharacterString>Climate and Forecast (CF) Metadata Conventions Organization</gco:CharacterString>
						</gmd:organisationName>
						<gmd:contactInfo>
							<gmd:CI_Contact>
								<gmd:onlineResource>
									<gmd:CI_OnlineResource>
										<gmd:linkage>
											<gmd:URL>http://cfconventions.org/Data/cf-conventions/cf-conventions-1.7/cf-conventions.html#parametric-v-coord </gmd:URL>
										</gmd:linkage>
										<gmd:protocol>
											<gco:CharacterString>WWW:LINK</gco:CharacterString>
										</gmd:protocol>
										<gmd:applicationProfile>
											<gco:CharacterString>web browser</gco:CharacterString>
										</gmd:applicationProfile>
										<gmd:name>
											<gco:CharacterString/>
										</gmd:name>
										<gmd:description>
											<gco:CharacterString/>
										</gmd:description>
										<gmd:function>
											<gmd:CI_OnLineFunctionCode codeList="http://www.ngdc.noaa.gov/metadata/published/xsd/schema/resources/Codelist/gmxCodelists.xml#CI_OnLineFunctionCode"
														   codeListValue="information">information</gmd:CI_OnLineFunctionCode>
										</gmd:function>
									</gmd:CI_OnlineResource>
								</gmd:onlineResource>
							</gmd:CI_Contact>
						</gmd:contactInfo>
						<gmd:role>
							<gmd:CI_RoleCode codeList="http://www.ngdc.noaa.gov/metadata/published/xsd/schema/resources/Codelist/gmxCodelists.xml#CI_RoleCode"
									 codeListValue="author">author</gmd:CI_RoleCode>
						</gmd:role>
				</gmd:CI_ResponsibleParty>
			</gmd:citedResponsibleParty>
		</gmd:CI_Citation>
	</gmd:parameterCitation>
</gmd:MD_Georeferenceable>

repo: zdefne-usgs/ocean-iso-metadata


text:
Git repos created for typos, causing 'zinit update' 404s

Describe the bug
Plugins/Snippets/etc create repos in .zinit/ by name. The name can be wrong due to typos or keyword errors in .zinitrc. But after fixing the error in .zinitrc, the repo remains. Then 'zinit update' generates 404 errors as it tries to update erroneous repos.
To Reproduce
Steps to reproduce the behavior.

Edit .zinitrc and add:
zinit wait lucid for OMZL::colored-man-pages

Restart zinit:
Setting up snippet           OMZL::colored-man-pages
Downloading `OMZL::colored-man-pages' (with curl, wget, lftp)...
curl: (22) The requested URL returned error: 404 Not Found
curl: (22) The requested URL returned error: 404 Not Found
ERROR: Download failed.

Ok, that was wrong. It's a plugin. Edit .zinitrc and change to:
zinit wait lucid for OMZP::plugins/colored-man-pages

Restart zinit:
Snippet not loaded (OMZP::plugins/colored-man-pages)

Oh, that was also wrong. Don't need the 'plugin/' directory. Edit .zinitrc and change to:
zinit wait lucid for OMZP::colored-man-pages

Restart zinit:

Setting up snippet           OMZP::colored-man-pages
Downloading `OMZP::colored-man-pages' (with curl, wget, lftp)...
######################################################################## 100.0%

Success. Now try updating.
$ zinit update
...
Updating snippet OMZ::plugins/colored-man-pages
Downloading OMZ::plugins/colored-man-pages' (with curl, wget, lftp)... ##################################################################################################################################### 100.0% ... Updating snippet OMZL::colored-man-pages Downloading OMZL::colored-man-pages' (with curl, wget, lftp)...
curl: (22) The requested URL returned error: 404 Not Found
curl: (22) The requested URL returned error: 404 Not Found
ERROR: Download failed.
...
Updating snippet OMZP::colored-man-pages
Downloading OMZP::colored-man-pages' (with curl, wget, lftp)... ##################################################################################################################################### 100.0% ... Updating snippet OMZP::plugins/colored-man-pages Downloading OMZP::plugins/colored-man-pages' (with curl, wget, lftp)...
curl: (22) The requested URL returned error: 404 Not Found
curl: (22) The requested URL returned error: 404 Not Found
ERROR: Download failed.

Whoa. Two problems:
• It updated OMZP::colored-man-pages twice! Once as 'OMZP::colored-man-pages' and once as 'OMZ::plugins/colored-man-pages'
• It update the two repos based on wrong names, 'OMZL::colored-man-pages' and 'OMZP::plugins/colored-man-pages', failing both times.

Expected behavior
• Zinit should not create repos for typos or other errors.
• Zinit should not include erroneous repos when updating
Versions:

$ZSH_VERSION == .5.8
Operating system name and version (uname -a): Darwin Kernel Version 19.5.0

Notes:
• A related problem is that the git repos aren't culled when they're no longer used in the .initrc. Users will see monotonically growing update times as obsolete, unused git repos continue to be updated.
• It appears that a simple way to resync the repos to the correct set is to just delete the directories under .zinit/plugins. The repos matching the current .zshrc, without the extras, will be redownloaded the next time zinit starts.

• The same problem occurs for OMZL libraries. In my .zshrc file, I have:
    zinit wait lucid for OMZL::directories.zsh

In the $ zinit update output, I see:
Updating snippet OMZ::directories.zsh
Downloading `OMZ::directories.zsh' (with curl, wget, lftp)...
curl: (22) The requested URL returned error: 404 Not Found
curl: (22) The requested URL returned error: 404 Not Found
ERROR: Download failed.
...
Updating snippet OMZL::directories.zsh
Downloading `OMZL::directories.zsh' (with curl, wget, lftp)...
##################################################################################################################################### 100.0%

So a fail with one variation of the name, OMZ::directories.zsh', then a success with another, OMZL::directories.zsh.

Where are the repos for the OMZ* plugins stored?

The snippets are stored in ~/.zinit/snippets. The issue is now resolved for them. PS. You can delete any snippet by zi delete {id}.

Success! Thanks, Sebastian.
Re OMZ* snippets, I see. They're not git repos. This explains why I see them downloaded each time I do a zi update.

authors: GaryBoone psprint

repo: zdharma/zinit


text:
Auto-Download-Test, Web-Demo-Test failed Unsupported browser in Full regression for carina-core 7.4.26

carina-core 7.4.26
steps:
Run Full regression
Actual result: Auto-Download-Test, Web-Demo-Test failed
with error message "TEST [GSM arena web tests - testCompareModels] FAILED at [09:22:14 2022-09-28] - Unsupported browser: chrome" or "Unsupported browser: firefox"

More info: capabilities are overwritten incorrectly (an extra space is added)

repo: zebrunner/carina-demo


text:
Tailwind CSS support in Svelte components

Check for existing issues

[X] Completed

Describe the bug / provide steps to reproduce it
Basic Tailwind CSS support was added in Zed 0.103.1. It seems to be working in HTML/JSX/TSX files, but not Svelte files.
Environment
Zed: v0.104.0 (preview)
OS: macOS 13.5.0
Memory: 16 GiB
Architecture: aarch64
If applicable, add mockups / screenshots to help explain present your vision of the feature
Screenshot where no Tailwind classes are shown when writing h-: https://i.jeppe.ch/7hMBggmMtG0n.png
If applicable, attach your ~/Library/Logs/Zed/Zed.log file to this issue.
If you only need the most recent lines, you can run the zed: open log command palette action to see the last 1000.
No response

cc @ForLoveOfCats (tailwind) / @mikayla-maki (svelte).

Would also be great have this in .heex files (Phoenix LiveView templates) :)

This is the single thing preventing me from adopting Zed over VS Code. Godspeed!

Zed Tailwind CSS support in Svelte would be fantastic.

Coming soon!

This is available in today's preview release - v0.110.0.

authors: JosephTLyons Spikeysanju jeppech jmkmay zachdaniel

repo: zed-industries/community


text:
Shortcut To Open Settings (Ctrl  + Comma) Does Not Work

[x] I am on the latest Hyper.app version
[x] I have searched the issues of this repo and believe that this is not a duplicate

OS version and name: Windows 10 Enterprise 1809
Hyper.app version: 2.1.2
Link of a Gist with the contents of your .hyper.js: Default
The issue is reproducible in vanilla Hyper.app: Vanilla

Issue

Upon first opening Hyper after downloading and installing, I am unable to open the settings with the key binding (Ctrl + Comma).
Nothing happens when I use the key binding.
Other bindings such as Ctrl + Shift + D work as expected.

Are you using : ctrl+,

The tool tip in the settings menu says ctrl + comma
I am pressing ctrl ,

repo: zeit/hyper


text:
Style elements added to _document or to  component are being escaped

(Using Next.js 2.0.0-beta.36)
Trying to add global styles to my app, especially @font-face rules (for self-hosted fonts).
When adding styles to pages/documents.js (via the style prop) or via the next/document/head component, the appended CSS is escaped.
Which results in broken fonts.
Is this a bug, or is this intended ?
What could be a workound to output working @font-face rules ?
An excerpt of my css :
@font-face {
    font-family: 'Roboto Slab';
    font-style: normal;
    font-weight: 300;
    src: local('Roboto Slab Light'), local('RobotoSlab-Light'),
         url('/static/fonts/roboto-slab-v6-latin-300.woff2') format('woff2'),
         url('/static/fonts/roboto-slab-v6-latin-300.woff') format('woff');
  }

The output :
@font-face {
  font-family: 'Roboto Slab';
  font-style: normal;
  font-weight: 300;
  src: local('Roboto Slab Light'), local('RobotoSlab-Light'),
      url('/static/fonts/roboto-slab-v6-latin-300.woff2') format('woff2'),
      url('/static/fonts/roboto-slab-v6-latin-300.woff') format('woff');
}

Tried in a simple static project, the "clean" CSS works, the escaped one doesn't.

This is a React thing. You can use something like this:
<style dangerouslySetInnerHTML={{__html: `
    .styled { color: blue }
`}} />

https://medium.learnreact.com/the-style-tag-and-react-24d6dd3ca974#.fpm62sn1u

That was it ! Thank you.

authors: clementoriol timneutkens


text:
css reference to static files

Hi, I'm looking for a solution to set my background image in glamor css:
const mainStyle = style({     background: 'url(/static/bg.png) no-repeat center center scroll' })
Unfortunately that link yields a 404.

+1, curious how to go about this properly

Now sure how you did this but this works pretty well for me:
import React from 'react'
import style from 'next/css'

const mainStyle = style({ background: 'url(/static/bg.png) no-repeat center center scroll' })

export default () => (

Hello World

)

You need to create a directory called static in the root of your app and put your image bg.png.

yeah I ended up with the same solution.  There is a section of readme that goes over this if anyone else is curious

I hope we could close this issue.

authors: DarkAdmiral SpencerCDixon arunoda


text:
I want to have requests between our middleware using koa & http-proxy-middleware to be proxied to another debugging proxy

[ ] I have searched the issues of this repository and believe that this is not a duplicate.

Expected Behavior

Current Behavior

Steps to Reproduce (for bugs)

Context

Your Environment

Tech
Version

next

node

OS

browser

etc

Please provide a full description of an issue when you create them.
Based on the title, we're not going to add this to next since you can use the custom server api with https://www.npmjs.com/package/http-proxy

问题的描述都不写吗?  囧...

authors: didilinkin timneutkens zhangfaliang


text:
Importing CSS files?

Sometimes it's nice to break out your CSS into a separate .css file. I've tried to do the following:
pages/
└── index
    ├── index.css
    ├── index.js
    └── component.js

Then in the index.js, I've tried to do:
import css from './index.css'

And in next.config.js:
module.exports = {
  webpack: function (config) {
    config.module.loaders = (config.module.loaders || []).concat({
      test: /\.css$/, loader: 'raw'
    })
    return config
  }
}

But unfortunately, it keeps giving me:
 ERROR  Failed to compile with 1 errors

This dependency was not found in node_modules:

* ./index.css

Seems like it's not resolving to the right place for some reason, the local component.js works though via import component from './component.js', so I'm not sure what's going on here.

You mean this doesn't work on server ?
I thinks we don't have workaround for this yet. cc @arunoda

oh right, i guess there'd need to be a way for the webpack config to work on both sides in order for this to work.

I've got a kind of ballpark similar issue in that I just can't seem to get Next to play nicely with CSS or SASS. I have a components directory with standard React components in that I import into my pages but whenever I attempt to import in SASS (or CSS) files I get a ~"you need to use the appropriate loader for this file" type error message.
Generally in React I import SASS files and have Webpack compile using style, css and sass loaders. I've attempted to add these to the next.config.js file (and NPM installed them) but still get the same error message.
My next.config.js file:
module.exports = {
  webpack: (config, { dev }) => {
    config.module.rules.push({ test: /\.scss$/, loader: ['style-loader', 'css-loader', 'sass-loader'] });
    return config;
  }
}

Sorry if these questions sound dumb or I've missed something obvious in the docs that spell out the answers to them, but if anyone has a working example of importing / compiling SASS (or at the least CSS) into a component or a page with whatever's needed to add to the next.config.js to load / compile them, I'd massively appreciate it. Thanks!

I'm using css-modules-require-hook
to make css work.

@spacedragon Do you have an example how to integrate css-modules-require-hook with Next.js? I'm having problems with getting it working.

I'm still having issues with getting SASS to compile if anyone could shed some light on how to do this or just import a CSS file within Next it would be appreciated (via a code example).

added my solution for css here  https://github.com/spacedragon/next-css-load-example.git
which is not so perfect.  Hope someone can find better one.

Interesting that the README file has been updated to remove the SVG loader example and changed to say adding loaders for file like SVG, CSS and SASS is discouraged. I'm not sure why inlined CSS is OK but imported CSS isn't but I'm sure there's a good reason why. I'm just currently uncertain about the best strategy to handle none JS defined / inlined CSS and SASS.

@MikeDigitize See comment on #627 and #638 .

It's actually possible and pretty easy to process styles on server side.
directly in node:
require.extensions['.css'] = function(file) {
    console.log(file.id)
    return;
}

via babel register:
// from https://babeljs.io/docs/core-packages/babel-register/
require("babel-register")({
  // Optional ignore regex - if any filenames **do** match this regex then they
  // aren't compiled.
  ignore: /regex/,

  // Ignore can also be specified as a function.
  ignore: function(filename) {
    if (filename === '/path/to/es6-file.js') {
      return false;
    } else {
      return true;
    }
  },

  // Optional only regex - if any filenames **don't** match this regex then they
  // aren't compiled
  only: /my_es6_folder/,

  // Setting this will remove the currently hooked extensions of .es6, `.es`, `.jsx`
  // and .js so you'll have to add them back if you want them to be used again.
  extensions: [".es6", ".es", ".jsx", ".js"]
});

via webpack loaders:

ignore loader - https://www.npmjs.com/package/ignore-loader
isomorphic-style-loader - https://www.npmjs.com/package/isomorphic-style-loader

I personally use isomorphic-style-loader as it allows me to inline critical CSS while rendering on server. Hot reloading and other DX related stuff works too. I'm not really fan of CSS in JS as it complicates using 3rd party components and and somehow takes away the C from CSS.

@viktorbezdek Have you successfully used isomorphic-style-loader with next.js?

@noeljackson Not really, but I intend to. Next.js looks promising and could save me lot of time if I make it work. Will look into it in next one or two weeks and submit pull request if I'm successful.

@viktorbezdek I will put a bounty on this one, as it's really crucial to a project I'm working on. I know I'm not inept, but I do not understand how to debug the babel transformations enough to figure this out. I've tried permutation of these ideas and nothing works 100%. I have been able to get raw-loader to pull in a data-encoded stylesheet using babel-plugin-webpack-loaders, but none of the style loaders work. Thanks for chiming in! :) Much appreciated.

Is there a solution to this? I would like to see a solution so I don't have to include css globally.

FWIW, I've just been putting my CSS files in the /static folder. Not great colocation, but not a huge deal either.

There will be a solution. I just didn't manage to finish it. I've locally very first prototype which seems to work, however it needs few hours to be finished. I'm pretty sure I'll be done after weekend. Stay tuned.

@matthewmueller You are using CSS modules?

@viktorbezdek Thanks for working on this! CSS Modules support (or similar) is important for this project IMO. Styled jsx, is ok for simple situations but is hard to read for heavily styled components.
Would a babel plugin like this be an option (server side as well)? https://github.com/gajus/babel-plugin-react-css-modules
I tried to get this to work but but no luck :/

I got CSS modules sort of working with babel-plugin-css-modules-transform. See my hacky example in my fork.
The downside is you have to kill the server & restart it every time you make a change to the CSS.

Some React components expose default styling though a importable static resource. For instance to import the default style of https://github.com/react-component/slider one would use:
import 'rc-slider/assets/index.css';

It sure is possible to copy paste this stylesheet in the static/ directory but it won't stay in sync with the upstream style on a future component update, and it doesn't match what this component documentation recommend.

The problem is that those CSS files introduce global effects. We need to be able to capture the CSS and put it inside the React lifecycle, so that it gets unmounted, server-rendered, etc.
Many libraries do that, but I don't think it's a good pattern.

I'm not familiar with Zeit Next internals, but could some static analysis of the import be used to register/capture the CSS?

We could, but it would be really strange. Similar to something that's outside of render() magically inserting itself inside your component lifecycle.

Well... I just spent a bit too much time trying to hack CSS in here, BUT I landed on a solution that works (for me). Admittedly, it's a hack, but hot reloading works and so does server-side building.
Using (shudder) gulp, with this gulpfile (https://gist.github.com/auser/25e88e39d83413773c01f4c000ec2806) all **/*.scss files get concatenated together and shoved into a Styles component which I mount on the page as a "normal" element.
Hope this helps someone else until we can get true postcss support in next.

Thanks for the hack @auser, I've been looking at the webpack config all day with no luck!

Yes and no... I just use the .scss extension as a way to differentiate pure css files from pre-compiled ones. Since postcss (with precss) mimics sass well enough, I don't have one. Feel free to edit for yourself with a sass parser.

Seems like that is currently the best solution, using gulp to compile css file and build it inline or just even in /static if you don't mind not having hot reloading.

I have been working on this
https://github.com/davibe/next.js-css-global-style-test
Please help me test and PRs are welcome

@davibe thanks for your demo and babel-plugin-wrap-in-js

In the example I see use of a CSS file, and a SCSS file. Do you know if this would work with postcss & cssnext?

@khrome83  I don't see why not, I think its just a matter of adjusting .babelrc and next.config.js

@davibe I found that I was unable to deploy my app based on your configuration. The build was unable to read next/babel in the .babelrc file. I submitted an issue, but I'm really hopeful that a solution emerges from all this. Missing the ease of import file.css from create-react-app, but I know there must be a solution coming :)

The solution I want is likely along these lines:
https://github.com/zeit/styled-jsx/pull/100#issuecomment-277133969
We might support importing .css (by means of simply transpiling it into a module that exports a string) (and likewise we might support .svg by transpiling it into a pure react component)

and likewise we might support .svg by transpiling it into a pure react component

This is a pretty simple trick. I'll create a basic example showing how I handled this in another project =)

Based on @davibe sample I've created https://github.com/moxystudio/next.js-style-loader that will hopefully ease out adding css files into next.js projects.
It supports vanilla css, css-loader, postcss-loader, sass-loader and possibly others. Note that when css-loader is used, its url option must be set to false beucase next.js images must live /static. You will find all this information in the README.
Enjoy and please give me feedback!

Thanks for the repo! It worked for importing the css files. I am trying blueprintjs and it seems like the css is loading correctly! However the @font-face rule that the css is including doesn't seems to work. :\

@pencilcheck yes you must use paths pointing to /static, perhaps I will make that more clear in the README.

Is there any workaround regarding relative path included in the css files such as fonts atm? Or I simply have to copy the whole font files and css into static folder in order for it to work?

@pencilcheck the CSS files can stay outside of static. Your images and fonts must be inside static and you reference them with /static/file.

I get it. However I'm using blueprint, which is an npm package, I would like to be able to not have to modify any files inside node_modules.

@pencilcheck That's not possible unfortunately. next.js is very strict in how it handles images and other assets. Lets not pollute this conversation and please create an issue in next-style-loader repo if you may.

@tgoldenberg can you describe the problem better or tell me how to reproduce ? please refer to my repository. It's easyer for me to track issues there.

@davibe, it ended up being a problem using yarn over npm install. Yarn was throwing some inexplicable errors, but once I removed it the example worked fine in production.

I just spent 4 hours trying to set this up and thought it might be of interest for anybody looking to save some time. It applies styles automatically, runs the CSS through PostCSS and gives you local module names from css-loader. The lack of the latter was a major deal breaker for me in the current state of the example.
component.js
import React from 'react';
import stylesheet from './styles.css';

const [css, className] = stylesheet;
const Component = () => (

bazinga

);

.bashrc
{
    "presets": [
        "next/babel"
    ],
    "plugins": [
        ["wrap-in-js", {
            "extensions": ["css$"]
        }]
    ]
}

next.config.js
module.exports = {
    webpack: (config) => {
        config.module.rules.push(
            {
                test: /\.css$/,
                use: [
                    {
                        loader: 'emit-file-loader',
                        options: {
                            name: 'dist/[path][name].[ext]'
                        }
                    },
                    {
                        loader: 'raw-loader'
                    },
                    {
                        loader: 'val-loader'
                    },
                    {
                        loader: 'exports-loader',
                        options: {
                            0: 'exports[0][1]',
                            1: 'exports.locals'
                        }
                    },
                    {
                        loader: 'css-loader',
                        options: {
                            modules: true,
                            minimize: true
                        }
                    },
                    {
                        loader: 'postcss-loader'
                    }
                ]
            }
        );

        return config;
    }
};

I came up with a solution myself, which is very similar to what @satazor posted higher up in the thread: https://github.com/jozanza/next-css-json-loader.
Just add a few lines to your next.config.js:
module.exports = {
  webpack: config => {
    config.module.rules.push({
      test: /\.css$/,
      loader: 'emit-file-loader',
      options: {
        name: 'dist/[path][name].[ext]',
      }
    }, {
      test: /\.css$/,
      loader: 'babel-loader!next-css-json-loader',
    });
    return config;
  },
};

Styles are imported as js objects so it's very easy to use with glamor and similar solutions:
// .css files now conveniently expose all styles as js objects
import styles from 'some-package/styles.css';
import { css } from 'glamor';
// ...

  this is a nice box.

Cheers! 🍻 :)

Is there a way to make this work for importing markdown files as strings? I am currently using raw-loader, but as it is a webpack plugin it doesn't work on the server.

@kristojorg
I just wrote a babel plugin for markdown import. On my mobile right now, but if you view my GitHub you will see it.

@khrome83 that sounds awesome. Looking forward to trying it out

Thank you @khrome83! I'll give it a shot

I had to do this really quickly, so I did not update the readme. But you just include it as a babel plugin, and then use
import File from 'File.md';

I got it to work, thank you !! Very helpful

This is offtopic but since the issue is closed i feel free to elaborate :)
For markdown there are 2 things you can do.
(1)
One is to include the markdown file as a string and then compile it to html at runtime. You can do this using the generic wrap-in-js babel loader registering it for the markdown file extension just like it is used in the next.js example examples/with-globa-stylesheet/.babelrc for css.
(2)
Another thing you can do is to compile markdown at transpilation time using markdown-in-js
This can be more interesting in some scenario because the markdown document is already pre-rendered therefore at runtime it is faster (it just executes js). Also, the library allows you to injiect custom React components. Unfortunately in this case you have to write markdown inline in your source.js like this.
If you pick (2) also know that there is an atom plugin providing syntax hilight for markdown-in-js syntax and it's called language-markdown-in-js

@davibe thank you for the tip! I would rather the markdown parsed as build time, but the only problem I have with markdown-in-js is escaping the backticks while composing :(. Maybe I should try importing as string using babel and then feeding that to markdown-in-js?

@kristojorg
There are out her markdown renders. The reason I wrote my plugin was the same thing. I pull markdown as a string, then I run that through react-markdown. This works increasingly well because I can pass in react components to represent markdown render pieces, like List component to handle all lists. Works good with Styled JSX.

Is there any update on this? Through the comments above, I see there is still no perfect solutions currently.
Is it possible to have a example using isomorphic-style-loader - https://www.npmjs.com/package/isomorphic-style-loader?
That would be perfect!

Anyone have a solution for when importing a react component from npm package that in turn imports .css or .scss file? so basically transpiling files that are imported from node_modules

I've been using Create-React-App (CRA ) for a few weeks but today I came across Next.js and I got really excited because CRA doesn't currently support server-side rendering (SSR) which is a real shame.
I'd love to switch to Next.js for its SSR support out of the box but not having support for a CSS Preprocessor like SASS is holding me back.
CRA has great support for SASS and LESS.
Has anyone found a way to integrate a CSS preprocessor?

Agreed with cr101, not having a support for CSS/SASS means I have to throw out css frameworks like foundation which is not an option for me.

I was using the repo provided by @davibe but he is no longer maintaining it, and the latest build breaks with the solution he had.
Would love if someone has found a fix for this. Updating to 2.4.1 was absolutely necessary due to the security bug, so I don't have the option of going back down.

@Yuripetusko @cr101 @tgoldenberg Absolutely agree. I think honestly that next is really awesome to be able to work out of the box. Everything is okay even hard-coded structure (like mandatory /pages directory, /static etc.). But totally unsupported scss modules breaks entire thing for us. We have a very complex scss structure with automatic breakpoints and aspect ratio recalculation of everything. We worked so hard to make our structure so perfect. Next is great be we can't just throw out all the scss stuff that we have at the moment of being. Unsupported scss is the only but the most crucial thing that stops us from migration to this beautiful tool.

Actually, #1615 - there is some action going on. @timmywil is trying to setupisomorphic-style-loader to work with next. Everyone who interested is welcome to join and participate.

I tried every solution, which this thread points to, however could make any of them work. So I decided to try to make my own attempt and I have documented it here

@almeynman thank you! definitely going to see at your approach!
By the way, I've managed to make scss modules work by following this example. All I've done is added sass-loader and enabled sourcemaps.

I managed to make next.js suport CSS (even SCSS) in this way.
First, in next.config.js , tweak webpack config by adding given loaders and a DefintPlugin instance.
const webpack = require('webpack');

module.exports = {
  webpack: (config, {dev}) => {
    config.module.rules.push({
      test: /\.scss$/,
      use: [
        'style-loader',
        'css-loader',
        'sass-loader'
      ],
      exclude: /node_modules/,
    });

    config.plugins.push(
      new webpack.DefinePlugin({
        "process.env": {
          // flag to indicate this is for browser-side
          BROWSER: JSON.stringify(true),
       }
      })
    );

    return config;
  }
};

Then, in component code, require style file with condition. It makes sure only browser side bundling will have have style module.
if (process.env.BROWSER) {
  require("./style.scss");
}

If you don't mind the if (process.env.BROWSER), it works perfectly.

A good approach is here

@almeynman IMO that's not a very good approach as you are loading the CSS code for the entire website on every page instead of only loading the CSS file relevant to that page.

@cr101 Hi, I did not know that. I have not really used that setup, just posted it for reference for others. I still use my approach described in the blog post. If you could give me some feedback on that setup would be great

More examples and discussions if anyone is interested:
https://github.com/iaincollins/nextjs-starter
https://github.com/zeit/next.js/issues/2534
https://github.com/zeit/next.js/tree/v3-beta/examples/with-global-stylesheet
Based on the above and this thread, I was able to use PostCSS to transform:

Global SCSS (modules are the same, but you need an entry point in order to pre-compile all your CSS for production).
Separate 3rd party CSS with custom fontfaces through relative URL.

into a single CSS file at /static/styles/app.css to serve in production, with hot reloading still working.
postcss.config.js
module.exports = {
  plugins: [
    require("postcss-easy-import")({ prefix: "_" }), // keep this first
    require("postcss-url")({ url: "inline" })
  ]
};

next.config.js
Loaders to transform .scss in dev mode for hot-reloading and extract to single .css file in prod. This gives me build/app.css so on Production build, I added cp build/app.css static/styles/app.css after next build to have it available in static export and embed in custom header as shown below.
const ExtractTextPlugin = require('extract-text-webpack-plugin');

export default {
  webpack: (config, { dev }) => ({
    ...config,
    module: {
      ...config.module,
      rules: [
        ...config.module.rules,
        {
          test: /\.(css|scss)/,
          loader: 'emit-file-loader',
          options: {
            name: 'dist/[path][name].[ext]'
          }
        },
        ...(dev
          ? [
              {
                test: /\.css$/,
                use: ['raw-loader', 'postcss-loader']
              },
              {
                test: /\.s(a|c)ss$/,
                use: [
                  'raw-loader',
                  {
                    loader: 'postcss-loader',
                    options: {
                      sourceMap: true
                    }
                  },
                  {
                    loader: 'sass-loader',
                    options: {
                      sourceMap: true
                    }
                  }
                ]
              }
            ]
          : [
              {
                test: /\.(css|scss)/,
                use: ExtractTextPlugin.extract({
                  use: [
                    {
                      loader: 'css-loader',
                      options: {
                        importLoaders: 2,
                        modules: false,
                        url: true,
                        minimize: true,
                        localIdentName: '[hash:base64:5]'
                      }
                    },
                    {
                      loader: 'postcss-loader'
                    },
                    {
                      loader: 'sass-loader'
                    }
                  ]
                })
              }
            ]),
        {
          test: /\.(ico|jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2)(\?.*)?$/,
          loader: 'url-loader?limit=100000&&name=[name].[ext]?[hash:8]'
        }
      ]
    },
    plugins: [
      ...config.plugins,
      ...(dev ? [] : [new ExtractTextPlugin('app.css')])
    ]
  }),
};

custom header
const inlineCSS =
  process.env.NODE_ENV !== ENV_PRODUCTION && require('styles/index.scss');
...

        {inlineCSS && }
          {process.env.NODE_ENV === ENV_PRODUCTION &&
            <link
              rel="stylesheet"
              type="text/css"
              href={`/static/styles/app.css?${this.props
                .__NEXT_DATA__.buildId}`}
            />}

Hope this helps. Let me know if anyone needs more clarification.

Instead of extracting all your .scss files a single CSS file it would much better to compile each imported .scss file into into its own CSS file. That way you will only load the CSS styles you need on each page.
I'm not sure how you'd do that.

Please checkout my pull request, I think I have a good solution:
https://github.com/zeit/next.js/pull/2638

@cr101 that's true actually. We are importing our own internal UI library into different projects hence there is always a huge chunk of a file to load (not ideal I know, still working on modularising that beast).  It would be the next step, a scaled-up version from compile and serve 1 file to X number of files at X locations.

Not sure if this has any performance issue, but this is a pretty simple solution if you are using styled-components or similar, just make a CSS wrapper:
import styled from 'styled-components';

const Collapse = props => (
  <__Collapse>
    { props.children }
  </__Collapse>
);

export default Collapse;

/**
 * CSS
 */
const __Collapse = styled.div`
  .rc-collapse {
    background-color: #f7f7f7;
    border-radius: 3px;
    border: 1px solid #d9d9d9;
  }
  ...
`;

import RcCollapse from 'rc-collapse';
import Collapse from '~/components/rc/Collapse';

const HelpPage = () => (
  <Collapse>
    <RcCollapse>
      <RcCollapse.Panel header="Title">Content</RcCollapse.Panel>
    </RcCollapse>
  </Collapse>
);

Here's a simple solution for importing CSS files using babel-plugin-inline-import:
.babelrc
{
  "presets": ["next/babel"],
  "plugins": [
    [
      "inline-import",
      {
        "extensions": [".css"]
      }
    ]
  ]
}

page/component
import "prismjs";

import { PrismCode } from "react-prism";
import prismGlobalStyles from "prismjs/themes/prism.css";

export default () => {
	return (

			<PrismCode className="language-javascript">
				{`function(noop) {
					return noop;
				}`}
			</PrismCode>
			{/* ... */}

	);
};

@stovmascript this is a beautiful solution but I still get errors (I'm importing the .css build from https://github.com/Hacker0x01/react-datepicker). Are you sure you don't have anything else in play here? From the errors it looks like it needs another level of CSS loading.

@hilarykitz , @stovmascript  solution works for me, can you send us the error you are getting?

@stovmascript - how are you getting rid of the babel cache.

Make CSS file
Import File
Apply
Change CSS file - add new selector and style
Witness that Babel Cache keeps old version

@khrome83  you'll need to clear the node_modules/.cache

I found a better solution using babel-inline-loader plugin that clears the cache and works with the above. The issue with that method is that you can only apply global styles. When using in a non  */}

...

@CHarnel try

@almeynman getting this:
Module build failed: SyntaxError: C:/.../components/activeUsersTable.js:
Expected one child under JSX Style tag, but got 2 (eg: )

@CHarnel try putting both in template string

@CHarnel  try this approach

@alanhr
i try to put those css in one js file and export it
import bootstrap from 'bootstrap/dist/css/bootstrap.min.css'
import styles from './index.css'

export default bootstrap + styles

and then just
import styles from '../styles'
...

With https://github.com/sheerun/extracted-loader I've created you can use ExtractTextPlugin for both development and production, no need for different html in development or injecting css into js.

@comus I used your approach, works good, thank you.

@sheerun nice one thank you

I've submitted even more comprehensive example to next.js:
https://github.com/zeit/next.js/pull/3451

I've made myself a solution based on emit-files-loader. If anyone is interested I can post it here, but it relies on a custom server setup - basically you need to be able to statically serve single directory within .next build dir. It could probably be configured without a server by relying on the /_next/... path structure of the server.
Other than that you can write import stylesheet from ./styles/style.[scss|less|stylus|w/e]; and it will be the public path to your stylesheet file, so you can put it in a . It includes ?[hash]` for permanent caching and it does hot-reload.

@nikolakanacki official support will be introduced very soon 🙏 https://github.com/zeit/next.js/pull/3578

@timneutkens I've seen this one, is there an estimation on "very soon"? I see it's in canary already.
I just needed a solution right away, spent 2-3 days looking for one, and managed to write up my own which is basically an "easy fix", I'm even thinking about combining it with extract-text-webpack-plugin so one could statically join all the separate .[css|stylus|less|scss] files and have them all available as a single static resource.
The main problem behind these issues I think is that there is a lot of "magic" going on in the background behind production and dev builds, with hot reloading and stuff... One could probably read the source and see how things are assembled together, but it would be awesome if someone who built it wrote some docs on that, I think more people could contribute.

@nikolakanacki very soon 🙏 🤐

'm even thinking about combining it with extract-text-webpack-plugin so one could statically join all the separate .[css|stylus|less|scss] files and have them all available as a single static resource like it normally would without next.

The plugins that I wrote for next v5 already do this, they'll be open sourced soon 👍
Regarding writing docs on the internals, we're planning to document how everything works after v5 is out 🙏

@timneutkens Thank you!

@timneutkens thank you for the update, please post an update here when this thing lands!

Any news on this?

just create /static folder in root project, and put your file.css inside /static, then  to  hock. and then use className anywhere!

@alanhr
i try to put those css in one js file and export it
import bootstrap from 'bootstrap/dist/css/bootstrap.min.css'
import styles from './index.css'

export default bootstrap + styles

and then just
import styles from '../styles'
...

Much comprehensive and smart..thank you for this..I have been searching this kind of solution all day..

just create /static folder in root project, and put your file.css inside /static, then to Header html structure hock.
import Head from 'next/head';

          <meta charset="utf-8" />
          <link rel="stylesheet" href="/static/css/custom.css" />

and then use className anywhere!

Create a public folder in the root of your application(where package.json file is located).

Support is being added via #8626!

authors: CHarnel MikeDigitize Timer Tzelon Yuripetusko abelovic alanhr almeynman auser bassbump brycejacobs cheshirecode chhuang chibicode comus cr101 dakt davibe dvakatsiienko edmondnyaigoti hilarykitz iamstarkov jameskennethrobinson jozanza khrome83 kpuputti kristojorg lenny0702 matthewmueller mocheng mquandalle mrpeski nguyenvanphuc2203 nikolakanacki nkzawa noeljackson pavinduLakshan pencilcheck pungggi rauchg rouxfeur satazor sheerun spacedragon stephenmathieson stovmascript tgoldenberg thomaslindstrom timneutkens viktorbezdek


text:
Using exportPathMap config breaks dev mode hot-reload

Bug report
Describe the bug
Hot-reloading breaks when exportPathMap config is added to next.config.js.
To Reproduce

Open sandbox https://codesandbox.io/s/0y2q7162k0 and make changes to Test.scss in /components. Hot reloading works fine.
Open sandbox https://codesandbox.io/s/6wxwm2qx1w which is an exact copy but introduces exportPathMap config in next.config.js. Changes to Test.scss show recompile in terminal but hot-reload of actual output does not happen.

Expected behavior
Hot-reloading shouldn't stop working when exportPathMap config is used.
System information

OS: Windows 10 and https://codesandbox.io
Browser Chrome, latest
Version of Next.js: 8.0.3

Additional context
Add any other context about the problem here.

Hi @Soundvessel your issue seems to be related to this issue, but for this case a easy fix is to just let Next.js decide the exportPathMap in development and only change it for production, e.g:
exportPathMap: (defaultPathMap, { dev }) =>
    dev ? defaultPathMap : { "/": { page: "/index" } }

Actually it's exactly this issue: https://github.com/zeit/next.js/issues/6285
You have /index in the exportPathMap, which causes above issue that is already fixed on next@canary.

authors: Soundvessel lfades timneutkens


text:
react-hot-loader: 4.0.0 -> 4.0.1

I am using mobx with next.js
Sometimes hot reloading fails with an error.
Open stacktrace

Cannot read property '0' of null
TypeError: Cannot read property '0' of null
    at bindDependencies (http://localhost:3000/_next/-/page/index.js:42990:28)
    at trackDerivedFunction (http://localhost:3000/_next/-/page/index.js:42972:5)
    at Reaction.webpackJsonp../node_modules/mobx/lib/mobx.module.js.Reaction.track (http://localhost:3000/_next/-/page/index.js:43164:22)
    at ProxyComponent.reactiveRender [as render] (http://localhost:3000/_next/-/page/index.js:39408:22)
    at finishClassComponent (http://localhost:3000/_next/-/main.js:19188:33)
    at updateClassComponent (http://localhost:3000/_next/-/main.js:19156:12)
    at beginWork (http://localhost:3000/_next/-/main.js:19777:16)
    at performUnitOfWork (http://localhost:3000/_next/-/main.js:22609:16)
    at workLoop (http://localhost:3000/_next/-/main.js:22638:26)
    at renderRoot (http://localhost:3000/_next/-/main.js:22669:9)

That issue was fixed in react-hot-loader 4.0.1

@timneutkens can we please bump react-hot-loader all the way up to v4.1.0? It adds support for React v16.3, currently console is clogged with errors like this when using static getDerivedStateFromProps:

#4171, not going to merge immediately. First landing #4156.

authors: Edheltur jaydenseric timneutkens


text:
[now dev] Pass meta object to Builders' build() function

This introduces a new object called meta that gets passed to the Now Builders' build() function. The isDev property is moved to this object, and a new property requestPath is also introduced.
requestPath represents the URL that was requested to trigger the build() to be called. It may be used by builders to do incremental compilation and only re-build the assets related to the URL that was requested. For example, @now/next may use this property to only build the page that was requested.

Codecov Report

:exclamation: No coverage uploaded for pull request base (canary@1742218). Click here to learn what that means.
The diff coverage is 0%.

@@           Coverage Diff            @@
##             canary   #2069   +/-   ##
========================================
  Coverage          ?    4.5%
========================================
  Files             ?     243
  Lines             ?    8542
  Branches          ?     868
========================================
  Hits              ?     385
  Misses            ?    8140
  Partials          ?      17

Impacted Files
Coverage Δ

src/commands/dev/lib/dev-server.ts
0% <ø> (ø)

src/commands/dev/lib/types.ts
0% <ø> (ø)

src/commands/dev/lib/dev-builder.ts
0% <0%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 1742218...b14c2aa. Read the comment docs.

authors: TooTallNate codecov-io

repo: zeit/now-cli


text:
Update @zeit/ncc to v0.20.2

Minor changes 😈
This PR focused on update of @zeit/ncc

patches

Use isArray check for externals
Fixup windows build
Update to webpack-asset-relocator-loader 0.5.6
Webpack-asset-relocator-loader@0.5.7

This is causing the tests to fail. I believe there were some breaking API changes with ncc in v0.20.x /cc @styfle

There's a newer ncc available now
https://github.com/zeit/ncc/releases/tag/0.20.4

authors: MAPESO TooTallNate styfle


text:
Node version incompatability with version 6.5.7

My node version is v9.6.1 which is for sure greater than (or equal to) 7.6.0, as thie error message says when installing via yarn.
error serve@6.5.7: The engine "node" is incompatible with this module. Expected version ">=7.6.0".
error An unexpected error occurred: "Found incompatible module".

this is solveable with
yarn --ignore-engines

Otherwise I'm quite clueless what's going on here, if it's some screw up on my side, running on linux NixOs 64bit.

I am running node -v 5.6.0 windows 10 X64.  When install, no error, when run,
error
`C:\Users\engcid299\AppData\Roaming\nvm\v5.6.0\node_modules\serve\bin\serve.js:12
const {coroutine} = require('bluebird');
^
SyntaxError: Unexpected token {
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:387:25)`

$ node -v
v9.6.1
$ npm -v
5.6.0

I'm almost on the newest node....
error serve@6.5.8: The engine "node" is incompatible with this module. Expected version ">=7.6.0".
error An unexpected error occurred: "Found incompatible module".
info If you think this is a bug, please open a bug report with the information provided in "/home/hlolli/Documents/twlfront/yarn-error.log".
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

authors: hlolli hoogw

repo: zeit/serve


text:
Redis Adapter: not found server host key

Somebody help me with this ??
https://docs.zendframework.com/zend-cache/storage/adapter/#the-redis-adapter
I try it on config:
'cache' => [
        'enabled' => true,
        //About redis configuration
        'redis' => [
            'database' => 0,
            'namespace_separator' => ':',
            'password' => '',
            'persistent_id' => '',
            'resource_manager' => null,
            //This provides redis connector
            //By uri, associative array or list
            'server' => [
                'localhost',
                6379
            ]
        ],
    ]

return new Redis($config['redis']);
when debug it i found this bug ????

Adapter redis not work right ?

This issue seems to be related to https://github.com/zendframework/zend-cache/issues/109#issuecomment-337229452.
The server-key must be first array key in the configuration.
'cache' => [
        'enabled' => true,
        //About redis configuration
        'redis' => [
            'server' => [
                'localhost',
                6379
            ]
            'database' => 0,
            'namespace_separator' => ':',
            'password' => '',
            'persistent_id' => '',
            'resource_manager' => null,
            //This provides redis connector
            //By uri, associative array or list

        ],
    ]

repo: zendframework/zend-cache


text:
Wrong translation ids in german translation file

source: zendframework/zend-i18n-resources/languages/de/Zend_Validate.php
right: File has an incorrect mimetype of '%type%'
wrong: File has a false mimetype of '%type%'
right: The mimetype could not be detected from the file
wrong: The mimetype of file could not be detected
and some others

This repository has been closed and moved to laminas/laminas-i18n-resources; a new issue has been opened at https://github.com/laminas/laminas-i18n-resources/issues/6.

authors: mb-tec weierophinney


text:
Updated Travis CI configuration

removed Deploy Docs residues
removed HHVM build
moved cs-check and test coverage to run on PHP 7.1 with locked deps

@weierophinney Changed base to develop then, will rebase it shortly.

Thanks, @webimpress.

authors: webimpress weierophinney

repo: zendframework/zend-log


text:
Composer Requirements

When installing zend-mvc via composer, one will get an error when creating an application:
Fatal error: Class 'Zend\ModuleManager\Listener\ListenerOptions' not found
I see the that zend-modulemanager is set as a suggestion in composer.json. I guess it should be a requirement since the package does not run without it.

ModuleManager is required if you're using Application, but for other uses cases (e.g., using only the router, or only the controller subcomponent), it's not required. This is why it has been marked as an optional dependency.

authors: waltertamboer weierophinney

repo: zendframework/zend-mvc


text:
[BC break] Remove old InjectTemplateListener behavior

Removed old pseudomodule template name resolution which ignored subnamespaces and used __NAMESPACE__ variable in convoluted and non-intuitive ways.
Whitelisted classname based template name resolution introduced in ^2.3.0 is now default
Template resolution follows these rules:

strip \Controller\ namespace if present
strip trailing Controller in classname, unless classname is exactly Controller
inflect CamelCase to dash
replace namespace separator with slash

See https://github.com/zendframework/zendframework/pull/5670
This breaks backwards compatibility in some cases, check couple changed tests.
Affected modules can achieve compatibility with v2 and v3 simultaneously by adding whitelist entry to template map and moving templates or by mapping namespace to old location.
Needs documentation. If anyone is willing to write it for me I definitely won't object to that

@Xerkus Could you please add some verbiage into doc/book/migration/to-v3-0.md detailing the impact of this for users? I can then merge.
Thanks!

@Xerkus You can even leave a comment on the issue if you want, and I can then draft up the migration doc changes.

authors: Xerkus weierophinney


text:
automatic handling of languages does not work with constructor

The automatic handling of languages is not working for me.
I tried null, "auto", "browser" with the constructor - nothing worked. My accept handler was "ga-IE;q=1.0,de-DE;q=0.8". The snippet will work when coded into Bootstrap, but configuration via Zend_Application will use the constructor instead of multiple steps.
    $translator = new Zend_Translate_Adapter_Array(array(
//      'content' => APPLICATION_PATH . "/../resources/languages",
//      'scan' => Zend_Translate::LOCALE_DIRECTORY
/*      'locale' => "auto" -- is implied */
    ));
    $translator->addTranslation(array(
        'content' => APPLICATION_PATH . "/../resources/languages",
        'scan' => Zend_Translate::LOCALE_DIRECTORY
    ));

I suspect it's because of the last line in the constructor, there the $option['locale'] is again checked against the detected locale, which could be anything but "auto" by then.

I provided a unit test which proves that the browser language will not be picked up.


text:
PII evaluation functionality

Added PII detection as part of the synthetic data generation step
https://www.loom.com/share/7b68ea1d069b42a4872791a64895c19c?sid=42c7995d-caf5-4c6a-8497-ea7a213f15ee for a tiny video overview
https://cloud.zenml.io/organizations/fc992c14-d960-4db7-812e-8f070c99c6f0/tenants/8a462fb6-b1fe-48df-9677-edc76bc8352d/runs/e3e4d459-d7e6-4a93-8586-b78ea803069b?tab=overview -- the link to the pipeline where I ran this.

this looks super nice :)

authors: AlexejPenner strickvl

repo: zenml-io/zenml-projects


text:
Add verion tags/branches.

Hello.
Can you add all nedded version tags or branches?
https://github.com/zenovich/runkit/issues/50#issuecomment-23649790
Thanks.

@lexa-uw done :)

authors: lexa-uw zenovich

repo: zenovich/runkit


text:
Include properties in watch process to alert backend user to refresh after import

If you made an import and trigger block related changes - you will get an alert message to refresh in admin view. At the moment this excludes properties which also need to be imported.

After import you will get the correct alert message - even after property changes

repo: zephir/luya


text:
Add support for newlib-nano

Is your feature request related to a problem? Please describe.
Can't opt for linking with newlib-nano when choosing "(top menu) -> C Library -> Build with newlib c library"
Describe the solution you'd like
Ability to set newlib-nano option can dramatically decrease the size of project (in my case it is small C++ project with use of std::vector)
newlib
Memory region         Used Size  Region Size  %age Used
            FLASH:      101844 B         1 MB      9.71%
             SRAM:       11336 B       256 KB      4.32%
         IDT_LIST:          56 B         2 KB      2.73%

newlib-nano
Memory region         Used Size  Region Size  %age Used
            FLASH:       32960 B         1 MB      3.14%
             SRAM:        9188 B       256 KB      3.50%
         IDT_LIST:          56 B         2 KB      2.73%

For now I've added --specs=nano.specs to CMakeLists.txt:
if(NOT CONFIG_NATIVE_APPLICATION)
zephyr_ld_options(
  -nostdlib
  -static
  -no-pie
  --specs=nano.specs
)
endif()

@oxymoron87 note that there is an ongoing discussion about the C library and and types that @galak is leading.

I think we support this now.

authors: carlescufi galak oxymoron87

repo: zephyrproject-rtos/zephyr


text:
Question about k_thread_entry_t and k_thread_create

Hello everyone, I was navigating through various drivers using threads to do background work and I noticed that almost everywhere there are thread creations that use functions with a different definition than the k_thread_entry_t.
For example at adt7420_trigger, we can see that the adt7420_thread function has only two params and both have different type than (void *):
https://github.com/zephyrproject-rtos/zephyr/blob/4c3bcbafef27b690273fc5e1b14b18d76a35b5d3/drivers/sensor/adt7420/adt7420_trigger.c#L129-L133
https://github.com/zephyrproject-rtos/zephyr/blob/4c3bcbafef27b690273fc5e1b14b18d76a35b5d3/drivers/sensor/adt7420/adt7420_trigger.c#L57
https://github.com/zephyrproject-rtos/zephyr/blob/eac2f7c76399bb4b30b6f2aaeb253ca5fdfa1f95/include/kernel.h#L382

How does this work properly?
Is this a good practice or we should use methods with definition based on k_thread_entry_t and cast the params later on?

How does this work properly?

The other arguments are provided in registers or the stack when the new thread is set up, they are just ignored.

Is this a good practice

No, it's not.

So from what you said I guess that indeed the best solution is to use methods with a definition based on k_thread_entry_t.
Should we close this?

Yeah, this is an ABI violation, but it's harmless on existing architectures.

authors: andrewboie andyross nikooiko


text:
LMP Response Timeout / LL Response Timeout (0x22) after ~40s when using LE Secure Connections

Describe the bug
I'm using the hci_usb sample (Zephyr v1.14) on the nrf53840_pca10056 board as a BLE-USB-Dongle under Linux (bluez 5.50). I want to connect a custom peripheral running Zephyr v14.0 on a nrf52840. The peripherial uses a fixed passkey and issues bt_conn_security(conn, BT_SECURITY_FIPS) in its connected event to establish a LE Secure Connection. After entering the correct passkey the connection will be established and the devices will get paired.
Unfortunately the connection breaks down after around 40s with a LMP Response Timeout / LL Response Timeout (0x22).
I also tried a HAMA BT 4.0 USB-Dongle on the same Linux machine and got no problem connecting and pairing the very same peripheral.
To Reproduce
Steps to reproduce the behavior:

west build -b nrf52840_pca10056 samples/bluetooth/hci_usb
west flash
Connect nrf52840_pca10056 to a Linux machine (e.g. fedora)
On Linux:
bluetoothctrl --agent KeyboardDisplay
[bluetooth]# default-agent
[bluetooth]# select (mac addr of hci_usb dongle)
[bluetooth]# pairable on
[bluetooth]# scan on
[bluetooth]# scan off (after the desired peripheral has been found)
[bluetooth]# pair (mac addr of peripheral)
[bluetooth]# (enter passkey)
[bluetooth]# trust (mac addr of peripheral)
[bluetooth]# connect (mac addr of peripheral)
Running btmon simultaneously I get following output (I skipped the pairing part here, only the connection establishment is shown):

zephyr_dongle.pdf
Expected behavior
As mentioned I tried the same with a HAMA BT 4.0 dongle. With that I get following output:
hama_dongle.pdf
Impact
Showstopper
Screenshots or console output
Attached files zephyr_dongle.pdf and hama_dongle.pdf shows the btmon output when establishing a connection. zephyr_dongle.pdf shows the LMP timeout at the end of the document.
Environment (please complete the following information):

OS: Linux fedora
Toolchain: GNU gcc
Zepyhr v1.14 (cebe115) both for hci_usb and custom peripheral.

Additional context
Add any other context about the problem here.

After working with the HAMA dongle, I faced the same issue. I found out, that I had a bug in my custom peripheral FW. There I called a function in the BT connected event, that somehow took too long to process. This caused the error. I think this issue can be closed.

@PhilippFinke you can close it yourself, if no action required on the issue you faced.

authors: PhilippFinke cvinayak


text:
i2c shell functions non-functional on nRF53

Describe the bug
I2C is working on an nRF53-based system e.g. using sensor sample apps, however the I2C shell itself does not seem to function at all.
To Reproduce
Steps to reproduce the behavior:

Build BME680 sample for nRF53 (nrf5340dk_nrf5340_cpuapp) with shell enabled
Build hello world sample for nRF53 (nrf5340dk_nrf5340_cpuapp) with shell enabled
Flash BME680 sample app
Observe that sensor data is correctly output
Try to scan I2C bus, it returns 0 devices
Flash hello world sample app
Try to scan I2C bus, it returns 0 devices
Try to read from BME680 sensor, it fails

Expected behavior
It to work
Impact
Seems like a bit of an annoyance if this doesn't work
Logs and console output
Output from BME680 sample app:
uart:~$ *** Booting Zephyr OS build zephyr-v2.4.0-2823-gf4a26837c8cb  ***
Device 0x20000234 name is BME680
T: 24.100000; P: 100.585000; H: 42.176000; G: 37582.000000
T: 24.180000; P: 100.585000; H: 42.056000; G: 46444.000000
T: 24.220000; P: 100.586000; H: 41.935000; G: 51387.000000
T: 24.250000; P: 100.585000; H: 41.840000; G: 55226.000000
scan I2C_1
       0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:             -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
0 devices found on I2C_1

Output from hello world:
*** Booting Zephyr OS build zephyr-v2.4.0-2823-gf4a26837c8cb  ***
Hello World! nrf5340dk_nrf5340_cpuapp

uart:~$ i2c scan I2C_1
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:             -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
0 devices found on I2C_1
[00:00:03.736,206] <err> i2c_nrfx_twim: Error 195952641 occurred for message 0
[00:00:03.736,419] <err> i2c_nrfx_twim: Error 195952641 occurred for message 0
[00:00:03.736,938] <err> i2c_nrfx_twim: Error 195952641 occurred for message 0
[00:00:03.737,121] <err> i2c_nrfx_twim: Error 195952641 occurred for message 0
[00:00:03.737,609] <err> i2c_nrfx_twim: Error 195952641 occurred for message 0
[00:00:03.737,792] <err> i2c_nrfx_twim: Error 195952641 occurred for message 0
[00:00:03.738,311] <err> i2c_nrfx_twim: Error 195952641 occurred for message 0
[00:00:03.738,525] <err> i2c_nrfx_twim: Error 195952641 occurred for message 0
[00:00:03.738,708] <err> i2c_nrfx_twim: Error 195952641 occurred for message 0
[00:00:03.739,013] <err> i2c_nrfx_twim: Error 195952641 occurred for message 0
[00:00:04.239,135] <err> i2c_nrfx_twim: Error on I2C line occurred for message 0

uart:~$ i2c read_byte I2C_1 0x76
Failed to read from device: I2C_1
uart:~$ i2c read I2C_1 0x76
Failed to read from device: I2C_1
uart:~$ i2c read I2C_1 0x76 1
Failed to read from device: I2C_1

Environment (please complete the following information):

OS: Windows 7
Toolchain: GNU GCC from ARM (version 9.3.1, 2020 Q2 update)
Commit SHA or Version used: Mainline zephyr and also nRF connect SDK (issue appears on both). Mainline zephyr commit: f4a26837c8cb6d39f3307193068c3163b20ac584

Additional context
Add any other context about the problem here.

Initial review suggests the nRF53 doesn't behave the same as nRF52 with respect transfers with no data, which is the mechanism used to detect presence of a device on the bus.  The sensor signals an ACK at the end of the address, but the underlying nrfx driver must be continuing to perform a transaction even though the length should be zero.
This seems to be a difference in behavior at the nrfx driver level for the two chip lines.  @anangl any ideas?

Initial review suggests the nRF53 doesn't behave the same as nRF52 with respect transfers with no data, which is the mechanism used to detect presence of a device on the bus.  The sensor signals an ACK at the end of the address, but the underlying nrfx driver must be continuing to perform a transaction even though the length should be zero.
This seems to be a difference in behavior at the nrfx driver level for the two chip lines.  @anangl any ideas?

authors: pabigot thedjnK


text:
Coverity issue seen with CID: 178234

Static code scan issues seen in File: /subsys/net/lib/coap/coap.c
Category: Null pointer dereferences
Function: coap_packet_get_payload
Component: Networking
Please fix or provide comments to square it off in coverity in the link: https://scan9.coverity.com/reports.htm#v32951/p12996

Already addressed by https://github.com/zephyrproject-rtos/zephyr/pull/4562