Skip to content

Conversation

@lawrlee
Copy link

@lawrlee lawrlee commented Mar 14, 2018

No description provided.

bpteague and others added 30 commits October 7, 2021 09:58
* Update fromfile to support 3-byte fields

Some FCS files (such as the one generated by the Cytek xP5) store integers in 3-byte fields.  This breaks numpy's parser, which only wants power-of-two sized fields.  So, I've updated fromfile() to parse FCS files as a table of 1-byte unsigned ints, expand those fields to 4 bytes, and then re-view them as the proper dtype.

My only concern is that this may break on an FCS file produced by a big-endian machine (because I'm adding the extra bytes to the beginning of the field).  I don't have ready access to any of those -- do you?

* add tests for 3-byte DATA

* documentation for fromfile() changes
#37)

* If the FCS file uses whitespace delimiters (e.g. \x0c) avoid stripping

Otherwise the $BEGINDATA could be cut. In my case I had headers without 'data start' where the first data row had:
\x0c$BEGINDATA
So doing both the trim and the raw_text = raw_text[1:] means that we cut off the '$' which results in an error on line 381: 
self._data_start = int(text['$BEGINDATA'])

* Added unit tests for whitespace delimiter

Co-authored-by: Gergely Csegzi <gcsegzi@palantir.com>
Instead of making `cytoflow` depend on `fcsparser`, I would like to include `fcsparser` as a submodule. This way, if I have fixes that I want to roll out with a `cytoflow` release, I don't have to wait on you to roll a new release of `fcsparser`.  (Making new releases is harder than it should be.)

This would be a lot easier on my end if `fcsparser.__init__` used a relative import instead of an absolute import. This way, the directory containing `api.py` doesn't have to be in `sys.path`.  It should not effect folks who use `fcsparser` directly.
Bumps [numpy](https://github.com/numpy/numpy) from 1.21.1 to 1.22.0.
- [Release notes](https://github.com/numpy/numpy/releases)
- [Changelog](https://github.com/numpy/numpy/blob/main/doc/HOWTO_RELEASE.rst)
- [Commits](numpy/numpy@v1.21.1...v1.22.0)

---
updated-dependencies:
- dependency-name: numpy
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* fix for FCS files with multiple datasets

* Expand unit-tests

* Add tests for multi tube file parsing to pr (#45)

* resolves unittest issue with multi tube fcs parsing

* adds vscode, dist, build and venv folders to .gitignore

---------

Co-authored-by: Florian Kowarsch <florian.kowarsch@tuwien.ac.at>

---------

Co-authored-by: Brian Teague <bpteague@gmail.com>
Co-authored-by: Florian Kowarsch <39064983+CaRniFeXeR@users.noreply.github.com>
Co-authored-by: Florian Kowarsch <florian.kowarsch@tuwien.ac.at>
Add unit-test runner to CI
Update workflows, update readme and manifest
See release notes for details
BD facs diva devices only have channel_name_s set for some but not all channels. If not present for all channels fcsparser fallbacks to the channel_names_n.

This pull request includes two main adaptations:

- Using channel_names_n as a fallback for channels without a value in channel_names_s
- Puts both $PnN and $PnS as columns into the metadata dataframe

All adaptations have corresponding unit tests
see release notes
Update link to documentation
Bumps [tornado](https://github.com/tornadoweb/tornado) from 6.3.1 to 6.3.3.
- [Changelog](https://github.com/tornadoweb/tornado/blob/master/docs/releases.rst)
- [Commits](tornadoweb/tornado@v6.3.1...v6.3.3)

---
updated-dependencies:
- dependency-name: tornado
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Fix unsafe loading from file buffer

The numpy documentation states for numpy.frombuffer` that:
> This function creates a view into the original object.
> This should be safe in general, but it may make sense to copy
> the result when the original object is mutable or untrusted.

When the filebuffer is mutable a `ValueError: output array is read-only`
is raised in:
https://github.com/eyurtsev/fcsparser/blob/701000af178e36e0dedb53d409119c25675b9d16/fcsparser/api.py#L590

* Update pyproject.toml

---------

Co-authored-by: Eugene Yurtsev <eyurtsev@gmail.com>
* fixed some linting

* address a warning raised during tests

* update deps

* bump fcs_parser version

* allow also pandas 1.*

* poetry upgrade

* Update pyproject.toml

---------

Co-authored-by: Eugene Yurtsev <eyurtsev@gmail.com>
* Update lock file

* Update
Bumps [urllib3](https://github.com/urllib3/urllib3) from 2.0.6 to 2.0.7.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](urllib3/urllib3@2.0.6...2.0.7)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Update README.rst

* Update README.rst
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.