mccode-plumber 0.13.0__tar.gz → 0.13.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. {mccode_plumber-0.13.0/src/mccode_plumber.egg-info → mccode_plumber-0.13.2}/PKG-INFO +3 -3
  2. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/pyproject.toml +2 -2
  3. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2/src/mccode_plumber.egg-info}/PKG-INFO +3 -3
  4. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber.egg-info/requires.txt +2 -2
  5. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/tests/test_splitrun.py +26 -6
  6. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/.github/workflows/pip.yml +0 -0
  7. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/.github/workflows/wheels.yml +0 -0
  8. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/.gitignore +0 -0
  9. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/README.md +0 -0
  10. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/setup.cfg +0 -0
  11. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/__init__.py +0 -0
  12. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/conductor.py +0 -0
  13. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/epics.py +0 -0
  14. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/file_writer_control/CommandChannel.py +0 -0
  15. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/file_writer_control/CommandHandler.py +0 -0
  16. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/file_writer_control/CommandStatus.py +0 -0
  17. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/file_writer_control/InThreadStatusTracker.py +0 -0
  18. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/file_writer_control/JobHandler.py +0 -0
  19. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/file_writer_control/JobStatus.py +0 -0
  20. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/file_writer_control/KafkaTopicUrl.py +0 -0
  21. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/file_writer_control/StateExtractor.py +0 -0
  22. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/file_writer_control/WorkerFinder.py +0 -0
  23. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/file_writer_control/WorkerJobPool.py +0 -0
  24. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/file_writer_control/WorkerStatus.py +0 -0
  25. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/file_writer_control/WriteJob.py +0 -0
  26. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/file_writer_control/__init__.py +0 -0
  27. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/forwarder.py +0 -0
  28. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/kafka.py +0 -0
  29. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/manage/__init__.py +0 -0
  30. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/manage/efu.py +0 -0
  31. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/manage/ensure.py +0 -0
  32. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/manage/epics.py +0 -0
  33. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/manage/forwarder.py +0 -0
  34. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/manage/manager.py +0 -0
  35. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/manage/orchestrate.py +0 -0
  36. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/manage/writer.py +0 -0
  37. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/mccode.py +0 -0
  38. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/splitrun.py +0 -0
  39. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/utils.py +0 -0
  40. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber/writer.py +0 -0
  41. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber.egg-info/SOURCES.txt +0 -0
  42. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber.egg-info/dependency_links.txt +0 -0
  43. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber.egg-info/entry_points.txt +0 -0
  44. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/src/mccode_plumber.egg-info/top_level.txt +0 -0
  45. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/tests/test_epics.py +0 -0
  46. {mccode_plumber-0.13.0 → mccode_plumber-0.13.2}/tests/test_writer.py +0 -0
@@ -1,15 +1,15 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mccode-plumber
3
- Version: 0.13.0
3
+ Version: 0.13.2
4
4
  Author-email: Gregory Tucker <gregory.tucker@ess.eu>
5
5
  Classifier: License :: OSI Approved :: BSD License
6
6
  Description-Content-Type: text/markdown
7
7
  Requires-Dist: p4p
8
8
  Requires-Dist: kafka-python>=2.2.11
9
9
  Requires-Dist: ess-streaming-data-types>=0.14.0
10
- Requires-Dist: restage>=0.8.0
10
+ Requires-Dist: restage>=0.8.2
11
11
  Requires-Dist: mccode-to-kafka>=0.2.2
12
- Requires-Dist: moreniius>=0.5.0
12
+ Requires-Dist: moreniius>=0.5.1
13
13
  Requires-Dist: icecream
14
14
  Requires-Dist: ephemeral-port-reserve
15
15
 
@@ -8,9 +8,9 @@ dependencies = [
8
8
  'p4p',
9
9
  'kafka-python>=2.2.11',
10
10
  'ess-streaming-data-types>=0.14.0',
11
- 'restage>=0.8.0',
11
+ 'restage>=0.8.2',
12
12
  'mccode-to-kafka>=0.2.2',
13
- 'moreniius>=0.5.0',
13
+ 'moreniius>=0.5.1',
14
14
  'icecream',
15
15
  'ephemeral-port-reserve',
16
16
  ]
@@ -1,15 +1,15 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mccode-plumber
3
- Version: 0.13.0
3
+ Version: 0.13.2
4
4
  Author-email: Gregory Tucker <gregory.tucker@ess.eu>
5
5
  Classifier: License :: OSI Approved :: BSD License
6
6
  Description-Content-Type: text/markdown
7
7
  Requires-Dist: p4p
8
8
  Requires-Dist: kafka-python>=2.2.11
9
9
  Requires-Dist: ess-streaming-data-types>=0.14.0
10
- Requires-Dist: restage>=0.8.0
10
+ Requires-Dist: restage>=0.8.2
11
11
  Requires-Dist: mccode-to-kafka>=0.2.2
12
- Requires-Dist: moreniius>=0.5.0
12
+ Requires-Dist: moreniius>=0.5.1
13
13
  Requires-Dist: icecream
14
14
  Requires-Dist: ephemeral-port-reserve
15
15
 
@@ -1,8 +1,8 @@
1
1
  p4p
2
2
  kafka-python>=2.2.11
3
3
  ess-streaming-data-types>=0.14.0
4
- restage>=0.8.0
4
+ restage>=0.8.2
5
5
  mccode-to-kafka>=0.2.2
6
- moreniius>=0.5.0
6
+ moreniius>=0.5.1
7
7
  icecream
8
8
  ephemeral-port-reserve
@@ -1,11 +1,12 @@
1
1
  import unittest
2
+ from mccode_plumber.splitrun import make_parser
3
+ from restage.splitrun import args_fixup
2
4
 
3
5
 
4
6
  class SplitrunTestCase(unittest.TestCase):
5
7
  def test_parsing(self):
6
- from mccode_plumber.splitrun import make_parser
7
8
  parser = make_parser()
8
- args = parser.parse_args(['--broker', 'l:9092', '--source', 'm', '-n', '10000', 'inst.h5', '--', 'a=1:4', 'b=2:5'])
9
+ args = args_fixup(parser.parse_args(['--broker', 'l:9092', '--source', 'm', '-n', '10000', 'inst.h5', '--', 'a=1:4', 'b=2:5']))
9
10
  self.assertEqual(args.instrument, 'inst.h5')
10
11
  self.assertEqual(args.broker, 'l:9092')
11
12
  self.assertEqual(args.source, 'm')
@@ -14,7 +15,6 @@ class SplitrunTestCase(unittest.TestCase):
14
15
  self.assertFalse(args.parallel)
15
16
 
16
17
  def test_mixed_order_throws(self):
17
- from mccode_plumber.splitrun import make_parser
18
18
  parser = make_parser()
19
19
  parser.prog = "{{This failed before but works now? Why did it stop throwing?}}"
20
20
  pa = parser.parse_args
@@ -32,11 +32,10 @@ class SplitrunTestCase(unittest.TestCase):
32
32
  self.assertEqual(sort_args(['inst.h5', '-n', '10000', 'a=1:4', 'b=2:5']), ['-n', '10000', 'inst.h5', 'a=1:4', 'b=2:5'])
33
33
 
34
34
  def test_sorted_mixed_order_does_not_throw(self):
35
- from mccode_plumber.splitrun import make_parser
36
35
  from mccode_antlr.run.runner import sort_args
37
36
  parser = make_parser()
38
- args = parser.parse_args(sort_args(['inst.h5', '--broker', 'www.github.com:9093', '--source', 'dev/null',
39
- '-n', '123', '--parallel', '--', 'a=1:4', 'b=2:5']))
37
+ args = args_fixup(parser.parse_args(sort_args(['inst.h5', '--broker', 'www.github.com:9093', '--source', 'dev/null',
38
+ '-n', '123', '--parallel', '--', 'a=1:4', 'b=2:5'])))
40
39
  self.assertEqual(args.instrument, 'inst.h5')
41
40
  self.assertEqual(args.broker, 'www.github.com:9093')
42
41
  self.assertEqual(args.source, 'dev/null')
@@ -44,6 +43,27 @@ class SplitrunTestCase(unittest.TestCase):
44
43
  self.assertEqual(args.parameters, ['a=1:4', 'b=2:5'])
45
44
  self.assertTrue(args.parallel)
46
45
 
46
+ def test_ncount_limits(self):
47
+ args = args_fixup(make_parser().parse_args([
48
+ 'inst.json', '--broker', 'l:9092', '--source', 'm',
49
+ '-n', '1M', '--nmin', '100k', '--nmax', '1G'
50
+ ]))
51
+ self.assertEqual(args.ncount, 10**6)
52
+ self.assertEqual(args.nmin, 100000)
53
+ self.assertEqual(args.nmax, 10**9)
54
+ args = args_fixup(make_parser().parse_args([
55
+ 'inst.json', '--broker', 'l:9092', '--source', 'm', '-n', '100k]1M[1G'
56
+ ]))
57
+ self.assertEqual(args.ncount, 10 ** 6)
58
+ self.assertEqual(args.nmin, 100000)
59
+ self.assertEqual(args.nmax, 10 ** 9)
60
+ args = args_fixup(make_parser().parse_args([
61
+ 'inst.json', '--broker', 'l:9092', '--source', 'm', '-n', '1-1Ki+Mi'
62
+ ]))
63
+ self.assertEqual(args.ncount, 2**10)
64
+ self.assertEqual(args.nmin, 1)
65
+ self.assertEqual(args.nmax, 2**20)
66
+
47
67
 
48
68
  if __name__ == '__main__':
49
69
  unittest.main()